*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --brand: #1a3c5e; --brand-light: #e8f0f8;
  --accent: #e85d26; --text: #1a1a2e; --muted: #6b7280;
  --border: #e5e7eb; --bg: #f8f9fb; --white: #ffffff;
  --green: #16a34a; --radius: 12px;
  --card-shadow: 0 2px 12px rgba(0,0,0,0.07);
  --card-hover: 0 8px 32px rgba(0,0,0,0.14);
}
body { font-family: 'DM Sans', sans-serif; background: var(--bg); color: var(--text); min-height: 100vh; overflow-x: hidden; }

nav {
  background: var(--white); border-bottom: 1px solid var(--border);
  padding: 0 2rem; height: 58px;
  display: flex; align-items: center; justify-content: space-between;
  position: sticky; top: 0; z-index: 1250;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05);
}
.logo { font-family: 'DM Serif Display', serif; font-size: 1.5rem; color: var(--brand); }
.logo span { color: var(--accent); }
.nav-links { display: flex; gap: 1.5rem; align-items: center; }
.nav-links a { font-size: 0.875rem; color: var(--muted); text-decoration: none; font-weight: 500; }
.nav-links a:hover { color: var(--brand); }
.nav-btn { background: var(--brand) !important; color: white !important; padding: 0.4rem 1rem; border-radius: 8px; font-size: 0.85rem !important; }

.search-bar-wrap {
  background: var(--white); border-bottom: 1px solid var(--border);
  padding: 0.65rem 2rem; position: sticky; top: 58px; z-index: 190;
}
.search-bar { display: flex; align-items: center; gap: 0.5rem; max-width: 1400px; margin: 0 auto; flex-wrap: wrap; }
.search-input {
  display: flex; align-items: center;
  border: 1.5px solid var(--border); border-radius: 8px;
  padding: 0.4rem 0.85rem; gap: 0.5rem; background: var(--bg); flex: 1; min-width: 180px;
}
.search-input input { border: none; background: none; outline: none; font-family: 'DM Sans', sans-serif; font-size: 0.875rem; color: var(--text); width: 100%; }
.filter-btn {
  border: 1.5px solid var(--border); background: var(--white);
  padding: 0.4rem 0.9rem; border-radius: 8px; font-size: 0.8rem;
  font-weight: 500; color: var(--text); cursor: pointer; white-space: nowrap;
  transition: all 0.15s; font-family: 'DM Sans', sans-serif;
}
.filter-btn:hover { border-color: var(--brand); background: var(--brand-light); }
.filter-btn.active { background: var(--brand); color: white; border-color: var(--brand); }
.search-submit {
  background: var(--accent); color: white; border: none; border-radius: 8px;
  padding: 0.45rem 1.3rem; font-size: 0.875rem; font-weight: 600;
  cursor: pointer; font-family: 'DM Sans', sans-serif; transition: background 0.2s;
}
.search-submit:hover { background: #d97d00; }

.view-toggle-bar {
  background: var(--white); border-bottom: 1px solid var(--border);
  padding: 0.55rem 2rem;
  display: flex; align-items: center; justify-content: space-between;
  position: sticky; top: 112px; z-index: 180;
}
.view-tabs { display: flex; gap: 0.4rem; }
.view-tab {
  display: flex; align-items: center; gap: 0.45rem;
  padding: 0.38rem 1rem; border-radius: 8px;
  font-size: 0.82rem; font-weight: 500; cursor: pointer;
  border: 1.5px solid var(--border); background: var(--white);
  color: var(--muted); transition: all 0.15s; font-family: 'DM Sans', sans-serif;
}
.view-tab:hover { border-color: var(--brand); color: var(--brand); }
.view-tab.active { background: var(--brand); color: white; border-color: var(--brand); }
.result-info { font-size: 0.82rem; color: var(--muted); margin-left: 0.75rem; }
.result-info strong { color: var(--text); }
.sort-row { display: flex; align-items: center; gap: 0.5rem; }
.sort-label { font-size: 0.8rem; color: var(--muted); }
.sort-select {
  border: 1.5px solid var(--border); border-radius: 8px;
  padding: 0.32rem 0.65rem; font-size: 0.8rem;
  font-family: 'DM Sans', sans-serif; color: var(--text);
  outline: none; background: var(--white); cursor: pointer;
}

/* LIST VIEW */
#listView { display: flex; max-width: 1400px; margin: 0 auto; padding: 1.25rem 2rem; gap: 1.25rem; align-items: start; }
.sidebar { width: 258px; flex-shrink: 0; position: sticky; top: 178px; }
.filter-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.1rem; margin-bottom: 0.9rem; }
.filter-card h4 { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: var(--muted); margin-bottom: 0.85rem; }
.type-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem; }
.type-chip { border: 1.5px solid var(--border); border-radius: 8px; padding: 0.35rem; text-align: center; font-size: 0.78rem; font-weight: 500; cursor: pointer; transition: all 0.15s; color: var(--text); background: var(--white); }
.type-chip:hover { border-color: var(--brand); }
.type-chip.active { background: var(--brand); color: white; border-color: var(--brand); }
.price-range { display: flex; gap: 0.4rem; margin-bottom: 0.65rem; }
.price-range input { border: 1.5px solid var(--border); border-radius: 8px; padding: 0.35rem 0.55rem; font-size: 0.78rem; width: 50%; font-family: 'DM Sans', sans-serif; outline: none; color: var(--text); }
.price-range input:focus { border-color: var(--brand); }
.amenity-list { display: flex; flex-direction: column; gap: 0.45rem; }
.amenity-item { display: flex; align-items: center; gap: 0.45rem; font-size: 0.83rem; cursor: pointer; color: var(--text); }
.amenity-item input[type=checkbox] { accent-color: var(--brand); width: 14px; height: 14px; }
.apply-btn { width: 100%; background: var(--brand); color: white; border: none; border-radius: 8px; padding: 0.6rem; font-size: 0.85rem; font-weight: 600; cursor: pointer; font-family: 'DM Sans', sans-serif; margin-top: 0.65rem; transition: background 0.2s; }
.apply-btn:hover { background: #142f4a; }

.listing-area { flex: 1; min-width: 0; }
.cards-grid { display: flex; flex-direction: column; gap: 0.9rem; }
.listing-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; display: grid; grid-template-columns: 255px 1fr; box-shadow: var(--card-shadow); transition: box-shadow 0.2s, transform 0.15s; cursor: pointer; }
.listing-card:hover { box-shadow: var(--card-hover); transform: translateY(-2px); }
.listing-card.highlighted { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent); }
.card-image { position: relative; height: 190px; overflow: hidden; }
.listing-card:hover .card-image .thumb { transform: scale(1.04); transition: transform 0.35s; }
.thumb { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 2.8rem; opacity: .42; transition: transform 0.35s; }
.card-badge { position: absolute; top: 9px; left: 9px; font-size: 0.7rem; font-weight: 600; padding: 3px 8px; border-radius: 6px; text-transform: uppercase; letter-spacing: 0.03em; }
.badge-new { background: var(--accent); color: white; }
.badge-disc { background: var(--green); color: white; }
.dots { position: absolute; bottom: 7px; left: 50%; transform: translateX(-50%); display: flex; gap: 4px; }
.dot { width: 5px; height: 5px; border-radius: 50%; background: rgba(255,255,255,.55); }
.dot.on { background: white; }
.card-body { padding: 1rem 1.1rem; display: flex; flex-direction: column; justify-content: space-between; }
.price-row { display: flex; align-items: baseline; gap: 0.4rem; margin-bottom: 0.3rem; }
.price { font-size: 1.22rem; font-weight: 600; color: var(--brand); }
.per { font-size: 0.78rem; color: var(--muted); }
.old { font-size: 0.78rem; color: var(--muted); text-decoration: line-through; }
.type-b { display: inline-block; background: var(--brand-light); color: var(--brand); font-size: 0.7rem; font-weight: 600; padding: 2px 7px; border-radius: 5px; margin-bottom: 0.4rem; }
.ctitle { font-size: 0.93rem; font-weight: 600; color: var(--text); margin-bottom: 0.25rem; line-height: 1.4; }
.cloc { font-size: 0.79rem; color: var(--muted); margin-bottom: 0.6rem; }
.details { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.65rem; }
.pill { background: var(--bg); border: 1px solid var(--border); border-radius: 5px; padding: 2px 8px; font-size: 0.74rem; color: var(--muted); }
.tags { display: flex; gap: 0.4rem; flex-wrap: wrap; margin-bottom: 0.65rem; }
.tag { background: #f0f4fa; color: #3b5998; font-size: 0.7rem; padding: 2px 7px; border-radius: 20px; font-weight: 500; }
.cfooter { display: flex; align-items: center; justify-content: space-between; margin-top: auto; }
.avail { font-size: 0.76rem; color: var(--muted); }
.avail span { color: var(--green); font-weight: 600; }
.vbtn { background: var(--brand); color: white; border: none; border-radius: 8px; padding: 0.45rem 1.1rem; font-size: 0.78rem; font-weight: 600; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: background 0.2s; }
.vbtn:hover { background: #142f4a; }
.sbtn { background: none; border: 1.5px solid var(--border); border-radius: 8px; padding: 0.4rem 0.65rem; cursor: pointer; color: var(--muted); font-size: 0.9rem; transition: all 0.15s; margin-right: 0.4rem; }
.sbtn:hover { border-color: var(--accent); color: var(--accent); }

.pagination { display: flex; align-items: center; justify-content: center; gap: 0.4rem; margin-top: 1.75rem; padding-bottom: 2rem; }
.pg { width: 34px; height: 34px; border: 1.5px solid var(--border); border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 0.85rem; font-weight: 500; cursor: pointer; background: var(--white); transition: all 0.15s; font-family: 'DM Sans', sans-serif; }
.pg:hover { border-color: var(--brand); background: var(--brand-light); }
.pg.on { background: var(--brand); color: white; border-color: var(--brand); }

/* MAP VIEW */
#mapView { display: none; height: calc(100vh - 168px); }
.map-split { display: flex; height: 100%; }
.map-list-panel { width: 410px; flex-shrink: 0; overflow-y: auto; background: var(--bg); border-right: 1px solid var(--border); }
.map-list-inner { padding: 0.9rem; display: flex; flex-direction: column; gap: 0.7rem; }
.map-card { background: var(--white); border: 1.5px solid var(--border); border-radius: var(--radius); overflow: hidden; display: flex; cursor: pointer; transition: box-shadow 0.15s, border-color 0.15s; box-shadow: var(--card-shadow); }
.map-card:hover { box-shadow: var(--card-hover); border-color: var(--brand); }
.map-card.on { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent); }
.mc-img { width: 105px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 1.9rem; opacity: .5; height: 88px; }
.mc-body { padding: 0.55rem 0.75rem; flex: 1; min-width: 0; }
.mc-price { font-size: 0.98rem; font-weight: 600; color: var(--brand); }
.mc-title { font-size: 0.76rem; font-weight: 500; color: var(--text); margin: 2px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mc-loc { font-size: 0.71rem; color: var(--muted); }
.mc-tags { display: flex; gap: 0.3rem; flex-wrap: wrap; margin-top: 0.3rem; }
.mc-tag { background: #f0f4fa; color: #3b5998; font-size: 0.65rem; padding: 1px 6px; border-radius: 20px; }
.map-panel { flex: 1; position: relative; }
#leafletMap { width: 100%; height: 100%; }

/* Price pins */
.pp {
  background: var(--brand); color: white;
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 600;
  padding: 4px 9px; border-radius: 20px;
  white-space: nowrap; cursor: pointer;
  border: 2.5px solid white;
  box-shadow: 0 2px 8px rgba(0,0,0,0.28);
  transition: background 0.15s, transform 0.15s;
  line-height: 1;
}
.pp:hover, .pp.on { background: var(--accent) !important; transform: scale(1.15); z-index: 999 !important; }

/* POPUP */
.lf-popup .title { font-weight: 600; font-size: 0.85rem; color: var(--text); margin-bottom: 3px; }
.lf-popup .pr { font-size: 1rem; font-weight: 600; color: var(--brand); }
.lf-popup .lo { font-size: 0.75rem; color: var(--muted); }

.about-section { max-width: 1400px; margin: 0 auto 2rem; padding: 0 2rem; }
.about-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.5rem 1.75rem; }
.about-card h2 { font-family: 'DM Serif Display', serif; font-size: 1.25rem; color: var(--brand); margin-bottom: 0.7rem; }
.about-card p { font-size: 0.875rem; color: var(--muted); line-height: 1.75; }
footer { background: var(--brand); color: rgba(255,255,255,.7); padding: 1.75rem; text-align: center; font-size: 0.82rem; }
.footer-logo { font-family: 'DM Serif Display', serif; font-size: 1.3rem; color: white; margin-bottom: 0.4rem; }

.c1{background:linear-gradient(135deg,#dbeafe,#bfdbfe)} .c2{background:linear-gradient(135deg,#fce7f3,#fbcfe8)} .c3{background:linear-gradient(135deg,#d1fae5,#a7f3d0)} .c4{background:linear-gradient(135deg,#fef3c7,#fde68a)} .c5{background:linear-gradient(135deg,#ede9fe,#ddd6fe)} .c6{background:linear-gradient(135deg,#fee2e2,#fecaca)} .c7{background:linear-gradient(135deg,#e0f2fe,#bae6fd)} .c8{background:linear-gradient(135deg,#f0fdf4,#bbf7d0)}

@media(max-width:900px){
  #listView{flex-direction:column;padding:1rem;}
  .sidebar{width:100%;position:static;}
  .listing-card{grid-template-columns:1fr;}
  .card-image{height:170px;}
  .map-split{flex-direction:column;}
  .map-list-panel{width:100%;height:260px;}
  #mapView{height:auto;}
}

/* ══════════════════════════════════════════════════════════════════════════
   ROOM DETAIL PAGE  (added for Laravel — not in the original mock)
   ══════════════════════════════════════════════════════════════════════════ */
.detail-wrap { max-width: 1100px; margin: 0 auto; padding: 1.5rem 2rem 3rem; }
.breadcrumb { font-size: 0.8rem; color: var(--muted); margin-bottom: 1rem; }
.breadcrumb a { color: var(--muted); text-decoration: none; }
.breadcrumb a:hover { color: var(--brand); }

.detail-hero {
  height: 340px; border-radius: var(--radius); overflow: hidden;
  display: flex; align-items: center; justify-content: center;
  font-size: 6rem; opacity: .55; margin-bottom: 1.5rem; position: relative;
}
.detail-hero .badge-abs { position: absolute; top: 16px; left: 16px; font-size: .8rem; font-weight: 600; padding: 5px 12px; border-radius: 6px; text-transform: uppercase; letter-spacing: .03em; opacity: 1; }

.detail-grid { display: grid; grid-template-columns: 1fr 330px; gap: 1.75rem; align-items: start; }

.detail-main h1 { font-family: 'DM Serif Display', serif; font-size: 1.7rem; color: var(--text); margin-bottom: .4rem; line-height: 1.25; }
.detail-loc { font-size: .9rem; color: var(--muted); margin-bottom: 1.1rem; }
.detail-type-b { display: inline-block; background: var(--brand-light); color: var(--brand); font-size: .78rem; font-weight: 600; padding: 3px 10px; border-radius: 6px; margin-bottom: 1rem; }

.spec-row { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 1.5rem; }
.spec { background: var(--white); border: 1px solid var(--border); border-radius: 10px; padding: .7rem 1rem; min-width: 110px; }
.spec .k { font-size: .72rem; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 3px; }
.spec .v { font-size: .95rem; font-weight: 600; color: var(--text); }

.detail-section-title { font-family: 'DM Serif Display', serif; font-size: 1.2rem; color: var(--brand); margin: 1.75rem 0 .8rem; }
.detail-desc { font-size: .92rem; color: #374151; line-height: 1.85; }

.amen-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: .6rem; }
.amen-box { display: flex; align-items: center; gap: .55rem; background: var(--white); border: 1px solid var(--border); border-radius: 10px; padding: .65rem .9rem; font-size: .86rem; color: var(--text); }
.amen-box .ck { color: var(--green); font-weight: 700; }

#detailMap { height: 300px; border-radius: var(--radius); border: 1px solid var(--border); margin-top: .5rem; }

/* Sticky contact / booking card */
.book-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.4rem; box-shadow: var(--card-shadow); position: sticky; top: 90px; }
.book-price { font-size: 1.9rem; font-weight: 600; color: var(--brand); line-height: 1; }
.book-price .per { font-size: .85rem; font-weight: 400; color: var(--muted); }
.book-old { font-size: .9rem; color: var(--muted); text-decoration: line-through; margin-left: .4rem; }
.book-meta { font-size: .82rem; color: var(--muted); margin: .5rem 0 1.1rem; }
.book-meta span { color: var(--green); font-weight: 600; }
.book-field { margin-bottom: .7rem; }
.book-field label { display: block; font-size: .78rem; font-weight: 600; color: var(--muted); margin-bottom: .3rem; }
.book-field input, .book-field textarea {
  width: 100%; border: 1.5px solid var(--border); border-radius: 8px;
  padding: .55rem .7rem; font-size: .85rem; font-family: 'DM Sans', sans-serif;
  color: var(--text); outline: none; resize: vertical;
}
.book-field input:focus, .book-field textarea:focus { border-color: var(--brand); }
.book-btn { width: 100%; background: var(--accent); color: #fff; border: none; border-radius: 8px; padding: .75rem; font-size: .92rem; font-weight: 600; cursor: pointer; font-family: 'DM Sans', sans-serif; transition: background .2s; }
.book-btn:hover { background: #d97d00; }
.book-btn.secondary { background: var(--brand); margin-top: .55rem; }
.book-btn.secondary:hover { background: #142f4a; }

.similar-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.sim-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; text-decoration: none; box-shadow: var(--card-shadow); transition: box-shadow .2s, transform .15s; }
.sim-card:hover { box-shadow: var(--card-hover); transform: translateY(-2px); }
.sim-img { height: 120px; display: flex; align-items: center; justify-content: center; font-size: 2.2rem; opacity: .5; }
.sim-body { padding: .75rem .9rem; }
.sim-price { font-size: 1.05rem; font-weight: 600; color: var(--brand); }
.sim-title { font-size: .8rem; color: var(--text); margin: .25rem 0; line-height: 1.35; }
.sim-loc { font-size: .74rem; color: var(--muted); }

.no-results { background: var(--white); border: 1px dashed var(--border); border-radius: var(--radius); padding: 3rem 2rem; text-align: center; color: var(--muted); }
.no-results h3 { font-family: 'DM Serif Display', serif; color: var(--text); font-size: 1.2rem; margin-bottom: .5rem; }
.no-results a { color: var(--accent); text-decoration: none; font-weight: 600; }

.pg.disabled { opacity: .4; pointer-events: none; }
form.filter-form { margin: 0; }

@media(max-width:900px){
  .detail-grid { grid-template-columns: 1fr; }
  .book-card { position: static; }
  .similar-grid { grid-template-columns: 1fr; }
}

/* ══════════════════════════════════════════════════════════════════════════
   NESTPICK-STYLE LAYOUT — persistent map + list/grid toggle
   ══════════════════════════════════════════════════════════════════════════ */

/* Toolbar row: filters left, view toggle + sort right */
.np-toolbar {
  display: flex; align-items: center; gap: .5rem; flex-wrap: wrap;
  max-width: 1500px; margin: 0 auto; padding: .6rem 1.25rem;
  background: var(--white); border-bottom: 1px solid var(--border);
}
.np-toolbar .spacer { flex: 1; }

/* Dropdown filter buttons */
.np-dd { position: relative; }
.np-dd-btn {
  display: flex; align-items: center; gap: .4rem;
  padding: .5rem .85rem; border: 1.5px solid var(--border);
  background: var(--white); border-radius: 8px; font-size: .85rem;
  color: var(--text); cursor: pointer; font-family: inherit; white-space: nowrap;
}
.np-dd-btn:hover { border-color: var(--brand); }
.np-dd-btn.active { border-color: var(--brand); background: var(--brand-light); color: var(--brand); font-weight: 500; }
.np-dd-btn .chev { font-size: .6rem; opacity: .6; }
.np-dd-panel {
  display: none; position: absolute; top: calc(100% + 6px); right: 0; left: auto; z-index: 60;
  background: var(--white); border: 1px solid var(--border); border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.1); padding: 1rem; min-width: 240px;
}
.np-dd.open .np-dd-panel { display: block; }
.np-dd-panel h5 { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); margin: 0 0 .6rem; }
.np-dd-apply {
  width: 100%; margin-top: .8rem; padding: .5rem; background: var(--accent);
  color: #fff; border: none; border-radius: 7px; font-size: .82rem; font-weight: 600;
  cursor: pointer; font-family: inherit;
}
.np-dd-apply:hover { background: #d97d00; }

/* type chips inside dropdown */
.np-typegrid { display: grid; grid-template-columns: 1fr 1fr; gap: .4rem; }
.np-chip {
  padding: .5rem; text-align: center; border: 1.5px solid var(--border);
  border-radius: 7px; font-size: .82rem; cursor: pointer; color: var(--text);
}
.np-chip:hover { border-color: var(--brand); }
.np-chip.active { background: var(--brand-light); border-color: var(--brand); color: var(--brand); font-weight: 600; }
.np-price-row { display: flex; gap: .5rem; }
.np-price-row input {
  width: 100%; padding: .5rem .6rem; border: 1.5px solid var(--border);
  border-radius: 7px; font-size: .85rem; font-family: inherit; outline: none;
}
.np-price-row input:focus { border-color: var(--brand); }
.np-amen { display: flex; flex-direction: column; gap: .45rem; max-height: 220px; overflow-y: auto; }
.np-amen label { display: flex; align-items: center; gap: .5rem; font-size: .85rem; cursor: pointer; }
.np-amen input { accent-color: var(--brand); }

/* view toggle (list / grid) */
.np-viewtoggle { display: flex; border: 1.5px solid var(--border); border-radius: 8px; overflow: hidden; }
.np-viewbtn {
  display: flex; align-items: center; justify-content: center; width: 38px; height: 34px;
  background: var(--white); border: none; cursor: pointer; color: var(--muted);
  border-right: 1px solid var(--border);
}
.np-viewbtn:last-child { border-right: none; }
.np-viewbtn.active { background: var(--brand); color: #fff; }
.np-sort-select {
  padding: .5rem .7rem; border: 1.5px solid var(--border); border-radius: 8px;
  font-size: .82rem; font-family: inherit; color: var(--text); cursor: pointer; background: var(--white);
}

/* The split: results left (scroll), map right (sticky) */
.np-split { display: flex; max-width: 1500px; margin: 0 auto; align-items: stretch; }
.np-results {
  flex: 1 1 60%; min-width: 0; padding: 1rem 1.25rem;
  height: calc(100vh - 132px); overflow-y: auto;
}
.np-mapwrap {
  flex: 1 1 40%; position: sticky; top: 0; align-self: flex-start;
  height: calc(100vh - 132px);
}
#leafletMap { width: 100%; height: 100%; }
.np-count { font-size: .95rem; font-weight: 600; color: var(--text); margin-bottom: .8rem; }
.np-count span { color: var(--accent); }

/* Cards container — switches between list and grid */
.np-cards { display: grid; gap: 1rem; }
.np-cards[data-view="grid"] { grid-template-columns: repeat(auto-fill, minmax(225px, 1fr)); }
.np-cards[data-view="list"] { grid-template-columns: 1fr; }

/* The card */
.lc {
  display: flex; background: var(--white); border: 1px solid var(--border);
  border-radius: var(--radius); overflow: hidden; cursor: pointer;
  box-shadow: 0 1px 3px rgba(0,0,0,.04); transition: box-shadow .15s, transform .15s;
}
.lc:hover { box-shadow: 0 6px 20px rgba(0,0,0,.1); transform: translateY(-2px); }
.lc.pin-active { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent); }

/* grid mode: vertical card */
.np-cards[data-view="grid"] .lc { flex-direction: column; }
.np-cards[data-view="grid"] .lc-img { width: 100%; height: 170px; }

/* list mode: horizontal card */
.np-cards[data-view="list"] .lc { flex-direction: row; }
.np-cards[data-view="list"] .lc-img { width: 270px; min-width: 270px; height: auto; min-height: 190px; }

.lc-img {
  position: relative; display: flex; align-items: center; justify-content: center;
  font-size: 3rem; opacity: .9; color: rgba(255,255,255,.55);
}
.lc-badge {
  position: absolute; top: 10px; left: 10px; font-size: .72rem; font-weight: 600;
  padding: 4px 10px; border-radius: 6px; text-transform: uppercase; letter-spacing: .03em; color: #fff;
}
.lc-badge.badge-new { background: var(--accent); }
.lc-badge.badge-disc { background: var(--green); }
.lc-price-ov {
  position: absolute; left: 10px; bottom: 10px;
  background: rgba(0,0,0,.62); color: #fff; padding: 5px 11px; border-radius: 8px;
  font-size: 1.05rem; font-weight: 700; backdrop-filter: blur(2px);
}
.lc-price-ov small { font-size: .68rem; font-weight: 400; opacity: .85; }
.lc-price-ov .old { font-size: .72rem; font-weight: 400; text-decoration: line-through; opacity: .7; margin-left: 4px; }

.lc-body { flex: 1; padding: .85rem 1rem; display: flex; flex-direction: column; min-width: 0; }
.lc-type { display: inline-block; align-self: flex-start; background: var(--brand-light); color: var(--brand); font-size: .72rem; font-weight: 600; padding: 2px 9px; border-radius: 5px; margin-bottom: .4rem; }
.lc-title { font-size: 1rem; font-weight: 600; color: var(--text); margin: 0 0 .25rem; line-height: 1.3; }
.lc-loc { font-size: .82rem; color: var(--muted); margin-bottom: .55rem; }
.lc-pills { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .55rem; }
.lc-pill { font-size: .74rem; color: var(--text); background: var(--bg); border: 1px solid var(--border); border-radius: 6px; padding: 2px 8px; }
.lc-tags { display: flex; flex-wrap: wrap; gap: .3rem; margin-bottom: .6rem; }
.lc-tag { font-size: .7rem; color: var(--muted); background: var(--white); border: 1px solid var(--border); border-radius: 5px; padding: 2px 7px; }
.lc-foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.lc-avail { font-size: .76rem; color: var(--muted); }
.lc-avail b { color: var(--green); font-weight: 600; }
.lc-actions { display: flex; gap: .4rem; }
.lc-save { width: 32px; height: 32px; border: 1.5px solid var(--border); background: var(--white); border-radius: 7px; cursor: pointer; color: var(--muted); font-size: .95rem; }
.lc-save:hover { border-color: var(--accent); color: var(--accent); }
.lc-view { padding: .4rem .9rem; background: var(--brand); color: #fff; border: none; border-radius: 7px; font-size: .8rem; font-weight: 600; cursor: pointer; font-family: inherit; }
.lc-view:hover { background: #142f4a; }

/* map pin */
.pp {
  background: var(--brand); color: #fff; font-size: .74rem; font-weight: 700;
  padding: 3px 9px; border-radius: 20px; white-space: nowrap; box-shadow: 0 2px 6px rgba(0,0,0,.25);
  border: 2px solid #fff; cursor: pointer; transition: transform .1s;
}
.pp.on { background: var(--accent); transform: scale(1.12); z-index: 1000; }

/* pagination reuse */
.np-pagination { display: flex; gap: .35rem; justify-content: center; margin: 1.4rem 0 .5rem; }
.np-pagination .pg { min-width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--border); border-radius: 7px; color: var(--text); text-decoration: none; font-size: .85rem; background: var(--white); }
.np-pagination .pg.on { background: var(--brand); color: #fff; border-color: var(--brand); }
.np-pagination .pg.disabled { opacity: .4; pointer-events: none; }
.np-empty { text-align: center; padding: 3rem 1rem; color: var(--muted); }
.np-empty h3 { font-family: 'DM Serif Display', serif; color: var(--text); margin-bottom: .5rem; }
.np-empty a { color: var(--accent); font-weight: 600; text-decoration: none; }

/* Responsive: stack map below on narrow screens */
@media (max-width: 900px) {
  .np-split { flex-direction: column; }
  .np-results { height: auto; overflow: visible; flex-basis: auto; }
  .np-mapwrap { position: relative; height: 380px; flex-basis: auto; order: -1; }
  .np-cards[data-view="grid"] { grid-template-columns: 1fr; }
  .np-cards[data-view="list"] .lc { flex-direction: column; }
  .np-cards[data-view="list"] .lc-img { width: 100%; min-width: 0; height: 170px; }
}

/* ══════════════════════════════════════════════════════════════════════════
   MAP-VIEW LAYOUT MODES + per-card INFO / MAP / DETAILS actions
   ══════════════════════════════════════════════════════════════════════════ */

/* Layout mode dropdown panel */
.np-layout-panel { min-width: 190px; }
.np-layout-opt {
  display: flex; align-items: center; gap: .6rem; width: 100%;
  padding: .55rem .6rem; border: 1px solid transparent; border-radius: 8px;
  background: none; font-family: inherit; font-size: .84rem; color: var(--text);
  cursor: pointer; text-align: left;
}
.np-layout-opt:hover { background: var(--bg); }
.np-layout-opt.active { border-color: var(--brand); background: var(--brand-light); color: var(--brand); font-weight: 600; }
.np-layout-opt .gl { width: 26px; height: 18px; border: 1.5px solid currentColor; border-radius: 3px; display: inline-flex; overflow: hidden; flex-shrink: 0; }
.np-layout-opt .gl i { display: block; height: 100%; }
.gl-list i { width: 100%; background: currentColor; }
.gl-split i:first-child { width: 55%; background: currentColor; border-right: 1.5px solid currentColor; }
.gl-maplarge i:first-child { width: 35%; background: currentColor; border-right: 1.5px solid currentColor; }
.gl-map { background: currentColor; }

/* Layout modes — control the split ratio / visibility */
.np-split[data-layout="split"] .np-results { flex: 1 1 50%; }
.np-split[data-layout="split"] .np-mapwrap { flex: 1 1 50%; }

.np-split[data-layout="list"] .np-mapwrap { display: none; }
.np-split[data-layout="list"] .np-results { flex: 1; }
.np-split[data-layout="list"] .np-cards[data-view="grid"] { grid-template-columns: repeat(3, 1fr); }

.np-split[data-layout="maplarge"] .np-results { flex: .55 1 35%; }
.np-split[data-layout="maplarge"] .np-mapwrap { flex: 1.45 1 65%; }
.np-split[data-layout="maplarge"] .np-cards { grid-template-columns: 1fr !important; }

.np-split[data-layout="map"] .np-results { display: none; }
.np-split[data-layout="map"] .np-mapwrap { flex: 1; }

/* Per-card action row: Info | Map | Details ... View */
.lc-actions-row { display: flex; align-items: center; gap: .1rem; }
.lc-link {
  background: none; border: none; font-family: inherit; cursor: pointer;
  font-size: .72rem; font-weight: 600; color: var(--muted); text-transform: uppercase;
  letter-spacing: .03em; padding: .3rem .5rem; border-radius: 6px; text-decoration: none;
  display: inline-flex; align-items: center; gap: .25rem;
}
.lc-link:hover { color: var(--accent); background: var(--bg); }
.lc-link.on { color: var(--accent); }

/* Collapsible info panel inside a card */
.lc-info {
  border-top: 1px dashed var(--border); margin-top: .55rem; padding-top: .55rem;
  font-size: .8rem; color: #374151; line-height: 1.6;
}
.lc-info[hidden] { display: none; }
.lc-info .amn { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .5rem; }
.lc-info .amn span { background: var(--bg); border: 1px solid var(--border); border-radius: 5px; padding: 2px 8px; font-size: .72rem; color: var(--text); }
.lc-info .dv { margin-top: .5rem; }
.lc-info .dv a { color: var(--accent); font-weight: 600; text-decoration: none; font-size: .76rem; }

/* In list-mode the card is a row; make the info panel span full width under it */
.np-cards[data-view="list"] .lc { flex-wrap: wrap; }
.np-cards[data-view="list"] .lc .lc-info { flex-basis: 100%; }

/* ══════════════════════════════════════════════════════════════════════════
   RADIUS PIN-SEARCH control (overlays the map, top-left)
   ══════════════════════════════════════════════════════════════════════════ */
.np-mapwrap { position: sticky; } /* ensure positioning context kept */
.np-mapctrl {
  position: absolute; z-index: 500; top: 12px; left: 12px; right: 12px;
  background: rgba(255,255,255,.96); border: 1px solid var(--border);
  border-radius: 10px; padding: 10px 12px; box-shadow: 0 3px 12px rgba(0,0,0,.12);
  max-width: 320px;
}
.np-mapctrl-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.np-mapctrl-title { font-size: .82rem; font-weight: 700; color: var(--text); }
.np-radius-clear {
  background: none; border: none; color: var(--accent); font-family: inherit;
  font-size: .74rem; font-weight: 600; cursor: pointer; padding: 2px 4px;
}
.np-radius-clear:hover { text-decoration: underline; }
.np-mapctrl-hint { font-size: .72rem; color: var(--muted); margin-top: 3px; }
.np-radius-row { display: flex; align-items: center; gap: 10px; margin-top: 8px; }
.np-radius-row input[type=range] { flex: 1; accent-color: var(--accent); cursor: pointer; }
.np-radius-lbl { font-size: .78rem; font-weight: 700; color: var(--accent); white-space: nowrap; min-width: 44px; text-align: right; }
.np-radius-count {
  margin-top: 8px; font-size: .76rem; font-weight: 600; color: var(--brand);
  background: var(--brand-light); border-radius: 6px; padding: 5px 9px; text-align: center;
}
@media (max-width: 900px){ .np-mapctrl { max-width: none; } }

/* ══════════════════════════════════════════════════════════════════════════
   MARKER CLUSTERS — brand colours (navy → orange as density rises)
   ══════════════════════════════════════════════════════════════════════════ */
.marker-cluster-small  { background: rgba(26,60,94,.25); }
.marker-cluster-small div  { background: var(--brand); color:#fff; }
.marker-cluster-medium { background: rgba(26,60,94,.30); }
.marker-cluster-medium div { background: #24507a; color:#fff; }
.marker-cluster-large  { background: rgba(232,93,38,.28); }
.marker-cluster-large div  { background: var(--accent); color:#fff; }
.marker-cluster div { font-family:'DM Sans',sans-serif; font-weight:700; }
.marker-cluster span { color:#fff; }

/* map "loading this area / N rooms here" status chip */
.np-map-status {
  position:absolute; z-index:500; bottom:12px; left:50%; transform:translateX(-50%);
  background:rgba(26,60,94,.92); color:#fff; font-size:.76rem; font-weight:600;
  padding:5px 12px; border-radius:20px; box-shadow:0 3px 10px rgba(0,0,0,.25);
  display:none; white-space:nowrap;
}

/* ══════════════════════════════════════════════════════════════════════════
   AUTH — Airbnb-style login / sign up + dashboard
   ══════════════════════════════════════════════════════════════════════════ */
.nav-logout { background:none; border:none; font-family:inherit; font-size:.875rem; color:var(--muted); font-weight:500; cursor:pointer; padding:0; }
.nav-logout:hover { color:var(--accent); }

.auth-wrap { min-height:calc(100vh - 58px); display:flex; align-items:flex-start; justify-content:center; padding:2.5rem 1rem; background:var(--bg); }
.auth-card { background:var(--white); border:1px solid var(--border); border-radius:16px; width:100%; max-width:420px; padding:2rem 2rem 1.6rem; box-shadow:0 8px 30px rgba(0,0,0,.07); }
.auth-logo { font-family:'DM Serif Display',serif; font-size:1.6rem; color:var(--brand); text-align:center; margin-bottom:1.1rem; }
.auth-logo span { color:var(--accent); }

.auth-tabs { display:flex; gap:.4rem; background:var(--bg); border-radius:10px; padding:4px; margin-bottom:1.3rem; }
.auth-tab { flex:1; border:none; background:none; font-family:inherit; font-size:.9rem; font-weight:600; color:var(--muted); padding:.55rem; border-radius:8px; cursor:pointer; }
.auth-tab.active { background:var(--white); color:var(--brand); box-shadow:0 1px 3px rgba(0,0,0,.08); }

.auth-h { font-size:1.15rem; font-weight:600; color:var(--text); margin-bottom:1rem; }
.auth-field { display:block; margin-bottom:.85rem; }
.auth-field span { display:block; font-size:.8rem; font-weight:600; color:var(--muted); margin-bottom:.35rem; }
.auth-field small { font-weight:400; }
.auth-field input { width:100%; border:1.5px solid var(--border); border-radius:9px; padding:.7rem .8rem; font-size:.9rem; font-family:inherit; color:var(--text); outline:none; }
.auth-field input:focus { border-color:var(--brand); }

.auth-role { display:flex; gap:.6rem; margin-bottom:1rem; }
.auth-role-opt { flex:1; position:relative; cursor:pointer; }
.auth-role-opt input { position:absolute; opacity:0; }
.auth-role-opt span { display:block; text-align:center; border:1.5px solid var(--border); border-radius:9px; padding:.65rem; font-size:.86rem; font-weight:600; color:var(--text); }
.auth-role-opt input:checked + span { border-color:var(--brand); background:var(--brand-light); color:var(--brand); }

.auth-remember { display:flex; align-items:center; gap:.45rem; font-size:.82rem; color:var(--muted); margin-bottom:1rem; cursor:pointer; }
.auth-remember input { accent-color:var(--brand); }
.auth-submit { width:100%; background:var(--accent); color:#fff; border:none; border-radius:9px; padding:.8rem; font-size:.95rem; font-weight:600; cursor:pointer; font-family:inherit; transition:background .2s; }
.auth-submit:hover { background:#d97d00; }
.auth-fine { font-size:.72rem; color:var(--muted); text-align:center; margin-top:.7rem; }

.auth-error { background:#fef2f2; border:1px solid #fecaca; color:#b91c1c; border-radius:9px; padding:.7rem .85rem; font-size:.82rem; margin-bottom:1rem; }

.auth-or { display:flex; align-items:center; gap:.7rem; margin:1.2rem 0; color:var(--muted); font-size:.8rem; }
.auth-or::before, .auth-or::after { content:''; flex:1; height:1px; background:var(--border); }
.auth-social { width:100%; display:flex; align-items:center; justify-content:center; gap:.6rem; border:1.5px solid var(--border); background:var(--white); border-radius:9px; padding:.75rem; font-size:.9rem; font-weight:600; font-family:inherit; color:var(--text); cursor:pointer; }
.auth-social:disabled { opacity:.6; cursor:not-allowed; }
.auth-g { font-family:serif; font-weight:800; color:#4285F4; font-size:1.05rem; }
.auth-social em { font-style:normal; font-size:.68rem; color:var(--muted); background:var(--bg); padding:1px 7px; border-radius:10px; }

/* Dashboard */
.dash-wrap { max-width:1000px; margin:0 auto; padding:2rem 1.5rem 3rem; }
.dash-flash { background:var(--brand-light); color:var(--brand); border-radius:10px; padding:.8rem 1rem; font-size:.88rem; font-weight:600; margin-bottom:1.4rem; }
.dash-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.8rem; }
.dash-head h1 { font-family:'DM Serif Display',serif; font-size:1.7rem; color:var(--text); }
.dash-sub { font-size:.86rem; color:var(--muted); margin-top:.2rem; }
.dash-logout { background:none; border:1.5px solid var(--border); border-radius:9px; padding:.55rem 1.1rem; font-family:inherit; font-size:.85rem; font-weight:600; color:var(--text); cursor:pointer; }
.dash-logout:hover { border-color:var(--accent); color:var(--accent); }
.dash-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.1rem; }
.dash-card { background:var(--white); border:1px solid var(--border); border-radius:14px; padding:1.5rem; box-shadow:var(--card-shadow); }
.dash-ic { font-size:1.8rem; margin-bottom:.6rem; }
.dash-card h3 { font-size:1.05rem; color:var(--text); margin-bottom:.35rem; }
.dash-card p { font-size:.85rem; color:var(--muted); line-height:1.5; margin-bottom:1rem; }
.dash-btn { display:inline-block; background:var(--brand); color:#fff; text-decoration:none; border-radius:9px; padding:.6rem 1.2rem; font-size:.85rem; font-weight:600; }
.dash-btn.ghost { background:var(--white); color:var(--brand); border:1.5px solid var(--border); }
.dash-btn:hover { background:#142f4a; }
.dash-btn.ghost:hover { border-color:var(--brand); background:var(--brand-light); }
.dash-soon { display:block; font-size:.72rem; color:var(--muted); margin-top:.5rem; font-style:italic; }

@media(max-width:600px){ .dash-head { flex-direction:column; align-items:flex-start; } }

/* ══════════════════════════════════════════════════════════════════════════
   CLEAN AIRBNB-STYLE CARDS (overrides) — photo · heart · title · price · date
   ══════════════════════════════════════════════════════════════════════════ */
.lc { border:none; background:none; box-shadow:none; border-radius:0; overflow:visible; }
.lc:hover { box-shadow:none; transform:none; }
.lc:hover .lc-img { box-shadow:0 6px 18px rgba(0,0,0,.12); }
.lc.pin-active { box-shadow:none; border:none; }
.lc.pin-active .lc-img { box-shadow:0 0 0 2px var(--accent); }

/* image */
.np-cards[data-view="grid"] .lc { flex-direction:column; }
.np-cards[data-view="grid"] .lc-img { width:100%; aspect-ratio:20/19; height:auto; }
.np-cards[data-view="list"] .lc { flex-direction:row; gap:14px; align-items:flex-start; }
.np-cards[data-view="list"] .lc-img { width:230px; min-width:230px; aspect-ratio:20/19; height:auto; }
.lc-img {
  position:relative; border-radius:14px; overflow:hidden;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  transition:box-shadow .18s;
}
.lc-photo-ph { color:rgba(255,255,255,.55); }
.lc-heart {
  position:absolute; top:10px; right:10px; z-index:2;
  width:34px; height:34px; display:flex; align-items:center; justify-content:center;
  background:transparent; border:none; cursor:pointer; padding:0;
}
.lc-heart svg { fill:rgba(0,0,0,.4); stroke:#fff; stroke-width:1.1; transition:fill .15s, transform .1s; }
.lc-heart:hover svg { transform:scale(1.1); }
.lc-heart.saved svg { fill:var(--accent); stroke:#fff; }
/* sunflower centre stays brown in both states so it reads as a sunflower */
.lc-heart svg .sf-center { fill:#6b4a1f; stroke:#fff; stroke-width:1; }

/* body */
.lc-body { padding:.6rem .1rem 0; display:block; }
.lc-title { font-size:.95rem; font-weight:600; color:var(--text); margin:0 0 2px; line-height:1.35;
  cursor:pointer; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lc-loc { font-size:.86rem; color:var(--muted); margin:0 0 2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lc-specs { font-size:.86rem; color:var(--muted); margin:0 0 4px; }
.lc-price { font-size:.9rem; color:var(--text); }
.lc-price strong { font-weight:700; }
.lc-price .per { color:var(--muted); font-weight:400; font-size:.82rem; }
.lc-price s { color:var(--muted); font-size:.82rem; margin-left:6px; }
.lc-posted { font-size:.76rem; color:#9aa0a6; margin-top:3px; }

/* tighten the grid spacing so it reads like Airbnb */
.np-cards[data-view="grid"] { gap:1.5rem 1.1rem; }

/* Default split view: listings panel is half-width → show exactly 2 cards per row */
.np-split[data-layout="split"] .np-cards[data-view="grid"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
/* image ratio tuned for the 2-across cards in the 50% panel */
.np-split[data-layout="split"] .np-cards[data-view="grid"] .lc-img { aspect-ratio: 3/2; }

/* ══════════════════════════════════════════════════════════════════════════
   AIRBNB-STYLE PRICE PINS — solid white capsule, always covers the price
   ══════════════════════════════════════════════════════════════════════════ */
/* strip Leaflet's default marker box so only our capsule shows */
.leaflet-div-icon { background: transparent; border: none; }

.pp {
  display: inline-block;
  background: #ffffff !important;
  color: #1a1a2e !important;
  font-family: 'DM Sans', sans-serif;
  font-size: .8rem; font-weight: 700; line-height: 1;
  padding: 6px 11px; border-radius: 20px;
  white-space: nowrap;
  border: 1px solid rgba(0,0,0,.10) !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.6);
  cursor: pointer;
  transition: transform .1s, background .12s, color .12s;
}
.pp:hover {
  background: #1a1a2e !important; color: #fff !important;
  transform: scale(1.06); z-index: 999 !important;
}
/* active / selected pin → brand navy */
.pp.on {
  background: var(--brand) !important; color: #fff !important;
  border-color: var(--brand) !important;
  transform: scale(1.1); z-index: 1000 !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   LIST YOUR PLACE — form + My listings
   ══════════════════════════════════════════════════════════════════════════ */
.form-wrap { max-width:820px; margin:0 auto; padding:2rem 1.5rem 3rem; }
.form-head h1 { font-family:'DM Serif Display',serif; font-size:1.8rem; color:var(--text); }
.form-head p { color:var(--muted); font-size:.9rem; margin-top:.3rem; margin-bottom:1.5rem; }
.lform-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.lf { display:block; margin-bottom:1rem; }
.lf-full { grid-column:1 / -1; }
.lf > span, .lf-label { display:block; font-size:.82rem; font-weight:600; color:var(--muted); margin-bottom:.4rem; }
.lf small, .lf-label small { font-weight:400; }
.lf input, .lf select, .lf textarea {
  width:100%; border:1.5px solid var(--border); border-radius:9px; padding:.7rem .8rem;
  font-size:.9rem; font-family:inherit; color:var(--text); outline:none; box-sizing:border-box; background:#fff;
}
.lf input:focus, .lf select:focus, .lf textarea:focus { border-color:var(--brand); }
.pick-map { width:100%; height:300px; border:1.5px solid var(--border); border-radius:12px; overflow:hidden; }
.pick-coords { font-size:.82rem; color:var(--muted); margin-top:.5rem; }
.pick-coords.set { color:var(--brand); font-weight:600; }
.lform-amen { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:.5rem; }
.lform-amen label { display:flex; align-items:center; gap:.5rem; font-size:.86rem; color:var(--text); cursor:pointer; }
.lform-amen input { accent-color:var(--brand); }
.lform-actions { display:flex; justify-content:flex-end; gap:.8rem; margin-top:1.5rem; }
.lform-cancel { padding:.75rem 1.4rem; border:1.5px solid var(--border); border-radius:9px; color:var(--text); text-decoration:none; font-size:.9rem; font-weight:600; }
.lform-cancel:hover { border-color:var(--muted); }
.lform-submit { padding:.75rem 1.8rem; background:var(--accent); color:#fff; border:none; border-radius:9px; font-size:.95rem; font-weight:600; cursor:pointer; font-family:inherit; }
.lform-submit:hover { background:#d97d00; }

/* My listings */
.mine-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:1.2rem; }
.mine-card { text-decoration:none; color:inherit; border:1px solid var(--border); border-radius:14px; overflow:hidden; background:#fff; transition:box-shadow .15s, transform .15s; }
.mine-card:hover { box-shadow:0 6px 18px rgba(0,0,0,.1); transform:translateY(-2px); }
.mine-img { height:130px; display:flex; align-items:center; justify-content:center; font-size:2.4rem; color:rgba(255,255,255,.6); }
.mine-b { padding:.8rem .9rem; }
.mine-t { font-weight:600; font-size:.92rem; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mine-loc { font-size:.8rem; color:var(--muted); margin:.15rem 0 .4rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mine-price { font-weight:700; color:var(--text); font-size:.92rem; }
.mine-price span { font-weight:400; color:var(--muted); font-size:.8rem; }
.mine-status { display:inline-block; margin-top:.5rem; font-size:.7rem; font-weight:600; padding:2px 9px; border-radius:12px; }
.status-live { background:#dcfce7; color:#166534; }
.status-pending { background:#fef9c3; color:#854d0e; }

@media(max-width:640px){ .lform-grid { grid-template-columns:1fr; } }

/* ══════════════════════════════════════════════════════════════════════════
   PHOTOS — card cover fill + upload field/previews
   ══════════════════════════════════════════════════════════════════════════ */
.lc-img { position: relative; }
.lc-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.lc-img .lc-heart { z-index:2; }
.lc-heart svg { filter: drop-shadow(0 1px 2px rgba(0,0,0,.4)); }

/* upload drop zone */
.photo-drop { display:block; border:2px dashed var(--border); border-radius:12px; padding:1.4rem; text-align:center; cursor:pointer; transition:border-color .15s, background .15s; }
.photo-drop:hover { border-color:var(--brand); background:var(--brand-light); }
.photo-drop input[type=file] { display:none; }
.photo-drop-inner { display:flex; flex-direction:column; align-items:center; gap:.3rem; }
.photo-ic { font-size:1.6rem; }
.photo-drop-inner span { font-size:.9rem; font-weight:600; color:var(--text); }
.photo-drop-inner small { font-size:.78rem; color:var(--muted); }
.photo-drop-inner small.warn { color:#b45309; font-weight:600; }
.photo-drop-inner small.ok { color:var(--green); font-weight:600; }
.photo-previews { display:grid; grid-template-columns:repeat(auto-fill,minmax(96px,1fr)); gap:.6rem; margin-top:.8rem; }
.photo-thumb { aspect-ratio:1; border-radius:10px; overflow:hidden; border:1px solid var(--border); }
.photo-thumb img { width:100%; height:100%; object-fit:cover; display:block; }

.lform-submit:disabled { opacity:.5; cursor:not-allowed; }

/* detail-page gallery */
.detail-gallery { display:grid; grid-template-columns:2fr 1fr 1fr; grid-auto-rows:150px; gap:8px; border-radius:16px; overflow:hidden; margin-bottom:1.5rem; }
.detail-gallery .g-main { grid-row:span 2; }
.detail-gallery img { width:100%; height:100%; object-fit:cover; display:block; cursor:pointer; }
@media(max-width:640px){ .detail-gallery { grid-template-columns:1fr 1fr; } .detail-gallery .g-main { grid-column:span 2; } }

/* ══════════════════════════════════════════════════════════════════════════
   LOCATION AUTOCOMPLETE (Nominatim dropdown)
   ══════════════════════════════════════════════════════════════════════════ */
.loc-ac { position: relative; }
.loc-ac-list {
  position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 40;
  background: #fff; border: 1px solid var(--border); border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.12); overflow: hidden; max-height: 260px; overflow-y: auto;
}
.loc-ac-list[hidden] { display: none; }
.loc-ac-opt {
  padding: .6rem .8rem; font-size: .85rem; color: var(--text); cursor: pointer;
  border-bottom: 1px solid var(--bg); line-height: 1.35;
}
.loc-ac-opt:last-child { border-bottom: none; }
.loc-ac-opt:hover { background: var(--brand-light); color: var(--brand); }

/* ══════════════════════════════════════════════════════════════════════════
   LIST-YOUR-PLACE — sections, WhatsApp button, detail facts
   ══════════════════════════════════════════════════════════════════════════ */
.form-wrap.wide { max-width: 920px; }
.lsec { background:#fff; border:1px solid var(--border); border-radius:14px; padding:1.4rem 1.5rem; margin-bottom:1.2rem; }
.lsec-h { display:flex; align-items:center; gap:.6rem; font-size:1.05rem; font-weight:700; color:var(--text); margin-bottom:1.1rem; }
.lsec-h span { display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; background:var(--brand); color:#fff; border-radius:50%; font-size:.82rem; }
.lsec-sub { font-size:.76rem; font-weight:500; color:var(--muted); }

/* detail-page facts grid */
.detail-facts { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:.6rem 1.2rem; margin-bottom:.5rem; }
.fact { display:flex; justify-content:space-between; gap:1rem; padding:.55rem 0; border-bottom:1px solid var(--bg); font-size:.88rem; }
.fact .fk { color:var(--muted); }
.fact .fv { color:var(--text); font-weight:600; text-align:right; }

/* WhatsApp button */
.wa-btn { display:flex; align-items:center; justify-content:center; gap:.5rem; background:#25D366 !important; color:#fff !important; text-decoration:none; margin-bottom:.6rem; }
.wa-btn:hover { background:#1db855 !important; }
.book-btn.secondary { display:flex; align-items:center; justify-content:center; gap:.4rem; text-decoration:none; }
.book-nocontact { font-size:.82rem; color:var(--muted); text-align:center; margin-top:.5rem; }

/* Admin panel */
.admin-panel { background:#fff; border:1px solid var(--border); border-radius:14px; padding:1.5rem; margin-top:1.2rem; }
.admin-panel h2 { font-size:1.1rem; margin-bottom:.5rem; }
.admin-muted { font-size:.86rem; color:var(--muted); line-height:1.5; margin-bottom:1rem; }
.sync-result { margin-top:1rem; padding:.7rem .9rem; border-radius:9px; font-size:.86rem; font-weight:600; }
.sync-result.good { background:#dcfce7; color:#166534; }
.sync-result.bad { background:#fef2f2; color:#b91c1c; }

/* Nearest transit — read-only icon list */
.transit-list { border:1.5px solid var(--border); border-radius:9px; padding:.4rem; background:#fafbfc; min-height:44px; }
.transit-empty { display:block; padding:.5rem .5rem; font-size:.84rem; color:var(--muted); }
.transit-row { display:flex; align-items:center; gap:.5rem; padding:.45rem .5rem; border-radius:7px; font-size:.86rem; }
.transit-row + .transit-row { border-top:1px solid var(--border); }
.transit-row svg { flex-shrink:0; }
.transit-row .t-name { font-weight:600; color:var(--text); }
.transit-row .t-type { font-size:.68rem; font-weight:700; color:var(--brand); background:var(--brand-light); padding:1px 7px; border-radius:10px; }
.transit-row .t-dist { margin-left:auto; font-size:.8rem; color:var(--muted); }

/* ══════════════════════════════════════════════════════════════════════════
   MOBILE RESPONSIVE PASS — phones & small tablets
   (appended last so it overrides earlier desktop rules, incl. the sticky map)
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 820px) {
  /* — Nav: compact, links scroll sideways instead of overflowing — */
  nav { padding: 0 .9rem; height: 54px; gap: .5rem; }
  .logo { font-size: 1.2rem; flex: 0 0 auto; }
  .nav-links { gap: .8rem; overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .nav-links::-webkit-scrollbar { display: none; }
  .nav-links a { white-space: nowrap; font-size: .82rem; }
  .nav-btn { padding: .35rem .75rem; }

  /* — Search bar: stack full-width, drop the sticky to save vertical space — */
  .search-bar-wrap { padding: .6rem .9rem; position: static; }
  .search-bar { flex-direction: column; gap: .5rem; align-items: stretch; }
  .search-bar > * { width: 100%; box-sizing: border-box; }

  /* — Filter toolbar: wrap neatly, not sticky — */
  .np-toolbar { padding: .55rem .9rem; gap: .5rem; flex-wrap: wrap; position: static; }
  .np-toolbar > * { flex: 0 0 auto; }
  .np-dd-btn, .np-sort-select { font-size: .82rem; }

  /* — THE BIG FIX: stack map above list with guaranteed heights (no overlap) — */
  .np-split { flex-direction: column !important; }
  .np-results {
    height: auto !important; overflow: visible !important;
    width: 100% !important; flex: 1 1 auto !important; padding: .85rem .9rem !important;
  }
  .np-mapwrap {
    position: relative !important; top: auto !important; align-self: auto !important;
    height: 320px !important; width: 100% !important; flex: 0 0 320px !important; order: -1;
  }
  #leafletMap { height: 320px !important; }
  /* neutralise the desktop split ratios so they don't distort the column */
  .np-split[data-layout] .np-mapwrap { flex: 0 0 320px !important; }
  .np-split[data-layout] .np-results { flex: 1 1 auto !important; }
  .np-split[data-layout="list"] .np-mapwrap { display: none !important; }
  .np-split[data-layout="map"] .np-results { display: none !important; }
  .np-split[data-layout="map"] .np-mapwrap,
  .np-split[data-layout="map"] #leafletMap { height: calc(100vh - 180px) !important; }

  /* cards: single column on phones */
  .np-cards[data-view="grid"] { grid-template-columns: 1fr 1fr !important; }
  .np-cards[data-view="list"] .lc { flex-direction: column !important; }
  .np-cards[data-view="list"] .lc-img { width: 100% !important; min-width: 0 !important; height: 175px !important; }

  /* map "Search by area" panel: compact, fits the narrow map */
  .np-mapctrl { max-width: none; left: 8px; right: 8px; top: 8px; padding: 8px 10px; }
  .np-mapctrl-title { font-size: .78rem; }
  .np-mapctrl-hint { font-size: .7rem; }

  /* detail + forms stack to one column */
  .detail-wrap { padding: 1rem .9rem; }
  .detail-grid { grid-template-columns: 1fr; }
  .book-card { position: static; }
  .lform-grid { grid-template-columns: 1fr; }
  .form-wrap.wide, .form-wrap { padding-left: .9rem; padding-right: .9rem; }
}

@media (max-width: 480px) {
  .np-cards[data-view="grid"] { grid-template-columns: 1fr !important; }
  .logo { font-size: 1.08rem; }
  .np-mapwrap, #leafletMap { height: 280px !important; }
}

/* ══════════════════════════════════════════════════════════════════════════
   LIST FORM — Residential/Commercial toggle + conditional location
   ══════════════════════════════════════════════════════════════════════════ */
.pclass-toggle { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin-top:.4rem; }
.pclass-card {
  position:relative; display:flex; flex-direction:column; gap:.15rem;
  border:1.5px solid var(--border); border-radius:12px; padding:1rem 1rem 1rem 1rem; cursor:pointer;
  transition:border-color .15s, background .15s;
}
.pclass-card input { position:absolute; opacity:0; pointer-events:none; }
.pclass-card .pc-ic { font-size:1.4rem; }
.pclass-card .pc-t { font-weight:700; color:var(--text); }
.pclass-card .pc-d { font-size:.8rem; color:var(--muted); }
.pclass-card:has(input:checked) { border-color:var(--brand); background:var(--brand-light); }
.pclass-card:hover { border-color:var(--brand); }

.loc-ac-manual { border-top:1px solid var(--border); color:var(--brand); }
.loc-ac-manual strong { text-decoration:underline; }

.landed-actions { margin:.4rem 0 .2rem; }
.loc-geobtn {
  background:var(--brand-light); color:var(--brand); border:1px solid var(--brand);
  border-radius:9px; padding:.5rem .9rem; font-size:.85rem; font-weight:600; cursor:pointer;
}
.loc-geobtn:hover { background:var(--brand); color:#fff; }

.approx-toggle {
  display:flex; align-items:flex-start; gap:.55rem; margin-top:.8rem;
  font-size:.86rem; color:var(--text); background:#fafbfc; border:1px solid var(--border);
  border-radius:9px; padding:.7rem .8rem; cursor:pointer;
}
.approx-toggle input { margin-top:.15rem; }

select optgroup { font-weight:700; color:var(--text); }
select optgroup option { font-weight:400; padding-left:.5rem; }

/* the HTML hidden attribute must beat .lf/.lform display rules */
[hidden] { display: none !important; }

/* Empty-state must span the whole row, not sit in one grid cell */
.np-empty { grid-column: 1 / -1; width: 100%; }

/* Mobile nav: hide secondary category links so Log in / List your place stay visible */
@media (max-width: 820px) {
  .nav-cat { display: none !important; }
  .nav-links { justify-content: flex-end; gap: .6rem; }
}
/* Phones: one card per row for readability */
@media (max-width: 600px) {
  .np-cards[data-view="grid"] { grid-template-columns: 1fr !important; }
}

/* Manual building-entry block */
.manual-block { margin-top:.8rem; padding:1rem; border:1px solid var(--brand); border-radius:12px; background:var(--brand-light); }
.manual-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:.6rem; }
.manual-h { font-size:.95rem; font-weight:700; color:var(--text); margin:0; }
.manual-back { background:none; border:none; color:var(--brand); font-weight:600; cursor:pointer; font-size:.82rem; }
.manual-note { font-size:.8rem; color:var(--muted); margin:.6rem 0 0; }

/* Facility / amenity chips */
.chips-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:.5rem; }
.chips-all { background:none; border:none; color:var(--brand); font-weight:600; font-size:.82rem; cursor:pointer; }
.chip-grid { display:flex; flex-wrap:wrap; gap:.5rem; }
.chip { position:relative; display:inline-flex; }
.chip input { position:absolute; opacity:0; width:0; height:0; }
.chip span {
  display:inline-block; padding:.5rem .85rem; border:1.5px solid var(--border); border-radius:22px;
  font-size:.84rem; color:var(--text); cursor:pointer; user-select:none; transition:all .12s; background:#fff;
}
.chip span:hover { border-color:var(--brand); }
.chip input:checked + span { background:var(--brand); border-color:var(--brand); color:#fff; font-weight:600; }
.chip input:focus-visible + span { outline:2px solid var(--brand); outline-offset:2px; }

/* ── Admin: buildings CRUD ── */
.flash-ok { background:#e6f5ec; border:1px solid #9ad3b0; color:#1c7a45; padding:.7rem 1rem; border-radius:9px; margin-bottom:1rem; }
.flash-err { background:#fdecec; border:1px solid #f0a8a8; color:#b02525; padding:.7rem 1rem; border-radius:9px; margin-bottom:1rem; }
.flash-err ul { margin:0; padding-left:1.1rem; }
.bld-toolbar { display:flex; gap:1rem; justify-content:space-between; flex-wrap:wrap; align-items:center; margin-bottom:1rem; }
.bld-search { display:flex; gap:.5rem; align-items:center; flex:1; min-width:260px; }
.bld-search input { flex:1; padding:.55rem .8rem; border:1px solid var(--border); border-radius:8px; }
.bld-search .lform-submit { width:auto; padding:.55rem 1rem; }
.bld-clear { color:var(--muted); font-size:.85rem; }
.bld-add { width:auto !important; text-decoration:none; display:inline-block; padding:.55rem 1rem; }
.bld-table-wrap { overflow-x:auto; }
.bld-table { width:100%; border-collapse:collapse; font-size:.88rem; }
.bld-table th, .bld-table td { text-align:left; padding:.6rem .7rem; border-bottom:1px solid var(--border); vertical-align:top; }
.bld-table th { color:var(--muted); font-weight:600; font-size:.78rem; text-transform:uppercase; letter-spacing:.03em; }
.bld-table tbody tr:hover { background:#fafbfc; }
.bld-actions { white-space:nowrap; text-align:right; }
.bld-edit { color:var(--brand); font-weight:600; margin-right:.6rem; }
.bld-del { background:none; border:none; color:#c0392b; font-weight:600; cursor:pointer; font-size:.88rem; }
.bld-empty { text-align:center; color:var(--muted); padding:2rem 0; }
.bld-pagination { display:flex; align-items:center; gap:1rem; justify-content:center; margin-top:1.2rem; }
.pg { color:var(--brand); font-weight:600; padding:.4rem .8rem; border:1px solid var(--border); border-radius:8px; text-decoration:none; }
.pg-off { color:var(--muted); border-color:var(--border); opacity:.5; }
.pg-info { color:var(--muted); font-size:.85rem; }

/* ── Admin buildings: split table + beside map, inline edit ── */
.bld-wrap { max-width: 1400px; }
.bld-layout { display: flex; gap: 1.2rem; align-items: flex-start; }
.bld-left { flex: 1 1 60%; min-width: 0; }
.bld-right { flex: 1 1 40%; position: sticky; top: 1rem; }
.bld-map-head { font-size: .9rem; color: var(--muted); margin-bottom: .5rem; }
.bld-mapframe { width: 100%; height: 520px; border: 1px solid var(--border); border-radius: 12px; }
.bld-map { background:none; border:1px solid var(--brand); color:var(--brand); border-radius:7px; padding:.25rem .6rem; font-size:.8rem; font-weight:600; cursor:pointer; margin-right:.4rem; }
.bld-map:hover { background:var(--brand); color:#fff; }
.bld-edit { background:none; border:none; color:var(--brand); font-weight:600; cursor:pointer; font-size:.86rem; margin-right:.5rem; }
.bld-del  { background:none; border:none; color:#c0392b; font-weight:600; cursor:pointer; font-size:.86rem; }
/* inline edit form */
.bld-edit-row > td { background:#f7f9fb; padding:1rem !important; }
.bld-editform { }
.bef-grid { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.bef-grid label { display:flex; flex-direction:column; gap:.2rem; font-size:.8rem; color:var(--muted); }
.bef-grid label span { font-weight:600; }
.bef-grid input { padding:.45rem .6rem; border:1px solid var(--border); border-radius:7px; font-size:.9rem; color:var(--text); }
.bef-full { grid-column:1 / -1; }
.bef-actions { display:flex; align-items:center; gap:.8rem; margin-top:.8rem; }
.bef-save { width:auto; padding:.5rem 1.2rem; }
.bef-cancel { background:none; border:none; color:var(--muted); font-weight:600; cursor:pointer; }
.bef-msg { font-size:.82rem; color:var(--muted); }
.bef-msg.err { color:#c0392b; }

@media (max-width: 900px) {
  .bld-layout { flex-direction: column; }
  .bld-right { position: static; width: 100%; order: -1; }
  .bld-mapframe { height: 300px; }
  .bef-grid { grid-template-columns: 1fr; }
}

/* ── Buildings admin: full-width fit + form map ── */
.bld-wrap { max-width: none !important; padding-left: 1.4rem; padding-right: 1.4rem; }
.bld-layout { gap: 1rem; }
.bld-left  { flex: 1 1 64%; }
.bld-right { flex: 1 1 36%; }
.bld-mapframe { height: calc(100vh - 250px); min-height: 460px; }
/* keep the table compact so all columns (incl. actions) fit without scrolling */
.bld-table { table-layout: auto; width: 100%; }
.bld-table th, .bld-table td { padding: .5rem .5rem; }
.bld-actions { white-space: nowrap; text-align: right; }
.bld-map  { margin-right:.3rem; padding:.22rem .5rem; font-size:.76rem; }
.bld-edit { margin-right:.35rem; font-size:.82rem; }
.bld-del  { font-size:.82rem; }

/* form map (Add / Edit building) */
.form-mapsearch { display:flex; gap:.5rem; margin:.4rem 0 .5rem; }
.form-mapsearch input { flex:1; padding:.5rem .7rem; border:1px solid var(--border); border-radius:8px; }
.form-mapsearch .loc-geobtn { white-space:nowrap; }
#bFormMap.pick-map { height: 360px; border-radius:12px; }

@media (max-width: 1100px) {
  .bld-left, .bld-right { flex-basis: 100%; }
}

/* ── Buildings list: No. col, frozen header, filters, numbered pager, select ── */
.bld-toolbar-right { display:flex; gap:.6rem; align-items:center; }
.bld-manage-types { color:var(--brand); font-weight:600; font-size:.85rem; white-space:nowrap; text-decoration:none; }
.bld-scroll { max-height: calc(100vh - 280px); overflow-y: auto; overflow-x: auto; }
.c-no { width:44px; color:var(--muted); text-align:right; }
/* freeze header (both header rows) */
.bld-fixedhead thead th { position: sticky; background:#fff; z-index:2; }
.bld-fixedhead thead tr:first-child th { top:0; border-bottom:1px solid var(--border); }
.bld-fixedhead thead tr.bld-filter-row th { top:34px; background:#f7f9fb; padding:.3rem .4rem; }
.bld-filter-row input, .bld-filter-row select { width:100%; padding:.3rem .4rem; border:1px solid var(--border); border-radius:6px; font-size:.8rem; box-sizing:border-box; }
.bld-filter-go { background:var(--brand); color:#fff; border:none; border-radius:6px; padding:.3rem .5rem; font-size:.78rem; font-weight:600; cursor:pointer; }
/* selected row */
.bld-row { cursor:pointer; }
.bld-row.bld-selected > td { background: var(--brand-light) !important; }
.bld-row.bld-selected .c-name { color: var(--brand); }
/* numbered pagination */
.pg-cur { background:var(--brand); color:#fff; border-color:var(--brand); }
.pg-gap { color:var(--muted); padding:0 .2rem; }
.bld-pagination { flex-wrap:wrap; gap:.35rem; }
.bld-pagination .pg { padding:.35rem .6rem; min-width:34px; text-align:center; }
/* types manager */
.type-add { display:flex; gap:.5rem; }
.type-add input { flex:1; padding:.5rem .7rem; border:1px solid var(--border); border-radius:8px; }
.type-add .lform-submit { width:auto; padding:.5rem 1rem; }
.type-edit { display:inline; }
.type-edit input { padding:.4rem .6rem; border:1px solid var(--border); border-radius:7px; width:70%; }

/* Building autocomplete: two-line option (name + location) */
.loc-ac-opt .ac-name { font-weight:600; color:var(--text); }
.loc-ac-opt .ac-sub { font-size:.78rem; color:var(--muted); margin-top:.1rem; }

/* ── Buildings data-grid (client-side filters, freeze, numbered pages) ── */
.bld-toolbar { display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.bld-tools-left { display:flex; align-items:center; gap:1rem; flex:1; min-width:260px; }
.bld-global { flex:1; max-width:420px; padding:.55rem .8rem; border:1px solid var(--border); border-radius:8px; }
.bld-freeze { display:flex; align-items:center; gap:.4rem; font-size:.85rem; color:var(--muted); white-space:nowrap; cursor:pointer; }
.bld-tools-right { display:flex; align-items:center; gap:.7rem; }
.bld-ghost { color:var(--brand); font-weight:600; font-size:.9rem; border:1px solid var(--brand); border-radius:8px; padding:.5rem .9rem; text-decoration:none; white-space:nowrap; }
.bld-ghost:hover { background:var(--brand-light); }

.bld-table-wrap { overflow-x:auto; }
.bld-table-wrap.frozen { max-height:calc(100vh - 300px); overflow-y:auto; }
.bld-table-wrap.frozen thead th { position:sticky; top:0; background:#fff; z-index:3; }
.bld-table-wrap.frozen thead .bld-filter-row th { top:38px; z-index:2; }
.bld-table thead th { box-shadow: inset 0 -1px 0 var(--border); }
.c-no { width:46px; color:var(--muted); font-variant-numeric:tabular-nums; }
.bld-filter-row th { padding:.35rem .4rem !important; background:#fafbfc; }
.bld-filter-row input, .bld-filter-row select { width:100%; padding:.32rem .45rem; border:1px solid var(--border); border-radius:6px; font-size:.8rem; box-sizing:border-box; }
.bld-row { cursor:pointer; }
.bld-row.selected { background:var(--brand-light) !important; box-shadow: inset 3px 0 0 var(--brand); }
.bld-row:hover { background:#f4f7fa; }

.bld-foot { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; flex-wrap:wrap; }
.bld-count { color:var(--muted); font-size:.85rem; }
.bld-pagination { display:flex; align-items:center; gap:.3rem; flex-wrap:wrap; }
.bld-pagination .pg { cursor:pointer; color:var(--brand); font-weight:600; padding:.35rem .6rem; border:1px solid var(--border); border-radius:7px; text-decoration:none; font-size:.85rem; min-width:34px; text-align:center; }
.bld-pagination .pg:hover { background:var(--brand-light); }
.bld-pagination .pg-cur { background:var(--brand); border-color:var(--brand); color:#fff; }
.bld-pagination .pg-off { color:var(--muted); opacity:.5; cursor:default; }
.bld-pagination .pg-gap { color:var(--muted); padding:0 .2rem; }

.bld-edit-open > td { background:#f7f9fb; padding:1rem !important; }

/* Nearest-transit cell in the buildings grid */
.c-transit { font-size:.8rem; color:var(--text); white-space:nowrap; }
.c-transit .tt { display:inline-block; font-size:.68rem; font-weight:700; padding:.05rem .35rem; border-radius:4px; color:#fff; margin-right:.15rem; }
.c-transit .tt-lrt { background:#c0392b; } .c-transit .tt-mrt { background:#16a085; }
.c-transit .tt-monorail { background:#2980b9; } .c-transit .tt-ktm { background:#8e44ad; }
.c-transit .tt-brt { background:#e67e22; } .c-transit .tt-none { color:var(--muted); }

/* OSM auto-fill button in the inline editor */
.bef-osm { background:#eef4fb; border:1px solid #7ea8d6; color:#1a3c5e; font-weight:600; font-size:.82rem; border-radius:8px; padding:.5rem .8rem; cursor:pointer; }
.bef-osm:hover { background:#1a3c5e; color:#fff; border-color:#1a3c5e; }

/* Collapsible side map + row Trace button + one-line pager */
.bld-layout { position: relative; }
/* Collapse/expand toggle now rides ON the draggable divider, so it always
   sits on the map boundary and moves with it. */
.bld-map-toggle {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 8;
  width: 26px; height: 46px; border: 1px solid var(--border);
  background: #fff; color: var(--brand); font-size: 1.1rem; font-weight: 700; cursor: pointer;
  border-radius: 8px; box-shadow: 0 1px 6px rgba(0,0,0,.14);
}
.bld-map-toggle:hover { background: var(--brand-light); border-color: var(--brand); }
.bld-layout.map-collapsed .bld-right { display: none; }
.bld-layout.map-collapsed .bld-left { flex-basis: 100%; }
/* When collapsed keep the toggle (to re-open) but drop the drag grip. */
.bld-layout.map-collapsed .sp-resizer { flex-basis: 26px; cursor: default; }
.bld-layout.map-collapsed .sp-resizer::before,
.bld-layout.map-collapsed .sp-resizer::after { display: none; }
.sp-resizer-toggle { flex-basis: 16px; overflow: visible; }

.bld-trace { background:none; border:1px solid #7ea8d6; color:#1a3c5e; font-weight:600; font-size:.78rem; border-radius:7px; padding:.2rem .5rem; cursor:pointer; margin-right:.35rem; }
.bld-trace:hover { background:#1a3c5e; color:#fff; }
.bld-trace:disabled { opacity:.6; cursor:default; }

.bld-pagination .pg-nav { white-space: nowrap; }

/* Center the buildings pager; keep the match count pinned left; roomier Prev/Next */
.bld-foot { justify-content: center; position: relative; }
.bld-count { position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.bld-pagination { gap: .4rem; }
.bld-pagination .pg-nav { padding-left: 1rem; padding-right: 1rem; margin: 0 .3rem; }
@media (max-width: 760px) {
  .bld-foot { flex-direction: column; }
  .bld-count { position: static; transform: none; margin-bottom: .5rem; }
}

/* Excel-style column header menu (sort + filter) */
th[data-col] { white-space: nowrap; }
.col-menu-btn { border:none; background:none; color:var(--muted); font-size:.7rem; cursor:pointer; padding:0 .1rem; margin-left:.15rem; line-height:1; }
.col-menu-btn:hover { color:var(--brand); }
.col-menu-btn.cm-filtered { color:var(--brand); background:var(--brand-light); border-radius:4px; }
th.col-active { color:var(--brand); }
.bld-filter-row { display:none; }  /* legacy safety */

.col-menu { position:fixed; z-index:60; width:260px; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:0 8px 28px rgba(0,0,0,.16); padding:.5rem; font-size:.85rem; }
.col-menu[hidden]{ display:none !important; }
.cm-sort { display:flex; flex-direction:column; gap:.15rem; margin-bottom:.4rem; }
.cm-sort button { text-align:left; background:none; border:none; padding:.4rem .5rem; border-radius:6px; cursor:pointer; color:var(--text); font-weight:600; }
.cm-sort button:hover { background:var(--brand-light); color:var(--brand); }
.cm-search { width:100%; padding:.4rem .5rem; border:1px solid var(--border); border-radius:6px; margin-bottom:.35rem; box-sizing:border-box; }
.cm-all { display:flex; align-items:center; gap:.4rem; font-weight:600; padding:.25rem .3rem; border-bottom:1px solid var(--border); margin-bottom:.25rem; }
.cm-list { max-height:220px; overflow-y:auto; }
.cm-opt { display:flex; align-items:center; gap:.45rem; padding:.22rem .3rem; border-radius:5px; cursor:pointer; }
.cm-opt:hover { background:#f4f7fa; }
.cm-more { color:var(--muted); font-size:.75rem; padding:.3rem; }
.cm-actions { display:flex; gap:.5rem; align-items:center; margin-top:.45rem; border-top:1px solid var(--border); padding-top:.45rem; }
.cm-apply { width:auto; padding:.4rem .9rem; }
.cm-clear { background:none; border:none; color:var(--muted); font-weight:600; cursor:pointer; }

/* Column menu: By value / Filters tabs + condition inputs */
.cm-tabs { display:flex; gap:.3rem; margin-bottom:.4rem; }
.cm-tab { flex:1; background:#f1f4f7; border:1px solid var(--border); border-radius:6px; padding:.35rem; font-size:.78rem; font-weight:600; color:var(--muted); cursor:pointer; }
.cm-tab.cm-tab-on { background:var(--brand); border-color:var(--brand); color:#fff; }
.cm-op { width:100%; padding:.4rem .5rem; border:1px solid var(--border); border-radius:6px; margin-bottom:.35rem; }
.cm-cond-in { width:100%; padding:.4rem .5rem; border:1px solid var(--border); border-radius:6px; margin-bottom:.35rem; box-sizing:border-box; }

/* ── List-your-place: left step nav + scroll-spy ── */
.pc-ic { display: none !important; }   /* icons removed from R/C cards */
.lyt { display: flex; gap: 2rem; align-items: flex-start; }
.lyt-nav { flex: 0 0 210px; position: sticky; top: 1.5rem; }
.lyt-nav ol { list-style: none; margin: 0; padding: 0; border-left: 2px solid var(--border); }
.lyt-nav li { display: flex; align-items: center; gap: .6rem; padding: .6rem .9rem; margin-left: -2px; border-left: 2px solid transparent; color: var(--muted); font-weight: 600; font-size: .92rem; cursor: pointer; transition: all .15s; }
.lyt-nav li:hover { color: var(--brand); }
.lyt-nav li .step-n { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: #eef1f4; color: var(--muted); font-size: .8rem; flex: 0 0 24px; }
.lyt-nav li.active { color: var(--brand); border-left-color: var(--brand); }
.lyt-nav li.active .step-n { background: var(--brand); color: #fff; }
.lyt-main { flex: 1 1 auto; min-width: 0; }
.sub-toggle .pclass-card { padding: .8rem 1rem; }

@media (max-width: 900px) {
  .lyt { flex-direction: column; gap: 1rem; }
  .lyt-nav { position: static; flex-basis: auto; width: 100%; }
  .lyt-nav ol { display: flex; overflow-x: auto; border-left: none; border-bottom: 2px solid var(--border); scrollbar-width: none; }
  .lyt-nav ol::-webkit-scrollbar { display: none; }
  .lyt-nav li { border-left: none; border-bottom: 2px solid transparent; white-space: nowrap; margin-left: 0; }
  .lyt-nav li.active { border-left: none; border-bottom-color: var(--brand); }
  .lyt-nav li .pc-d, .lyt-nav li span:not(.step-n) { }
}

/* Pager: right-aligned, count left, borderless Prev/Next (overrides earlier) */
.bld-foot { justify-content: space-between !important; position: static !important; }
.bld-count { position: static !important; transform: none !important; }
.bld-pagination { justify-content: flex-end; margin-left: auto; }
.bld-pagination .pg-nav { border: none; background: none; padding-left: .45rem; padding-right: .45rem; }
.bld-pagination .pg-nav:hover { background: none; text-decoration: underline; }
.bld-pagination .pg-off.pg-nav { text-decoration: none; }

/* Column menu: keep it inside the viewport so Apply is always reachable */
.col-menu { display: flex; flex-direction: column; max-height: calc(100vh - 16px); }
.col-menu .cm-list { flex: 1 1 auto; max-height: none; }
.col-menu .cm-actions { flex: 0 0 auto; }

/* House-rules chips block + available-from toggle */
.chips-block { margin-top: .3rem; }
.avail-toggle { display: flex; gap: 1.2rem; padding: .4rem 0; }
.avail-opt { display: flex; align-items: center; gap: .4rem; font-weight: 500; color: var(--text); cursor: pointer; }
#availDate { margin-top: .3rem; }

/* ── List-form refinements (sharp edges, smaller toggles, segmented available) ── */
/* 1. building autocomplete must sit above the Leaflet zoom control */
.loc-ac-list { z-index: 1500; }

/* 2. sharp rectangular edges on all form controls + toggle cards + chips */
.lform input, .lform select, .lform textarea,
.pclass-card, .chip, .avail-opt, .loc-ac-list, .manual-block, #pickMap, .pick-map { border-radius: 0 !important; }

/* 3. smaller toggle cards */
.pclass-card { padding: .7rem .9rem; }
.pclass-toggle .pc-t { font-size: .98rem; }
.pclass-toggle .pc-d { font-size: .8rem; }
.sub-toggle .pclass-card { padding: .6rem .85rem; }
.lform input, .lform select { padding: .55rem .7rem; font-size: .92rem; }

/* 4. Available-from as a segmented toggle button (not radio circles) */
.avail-toggle { display: inline-flex; gap: 0; border: 1px solid var(--border); overflow: hidden; }
.avail-toggle .avail-opt { margin: 0; padding: .55rem 1.1rem; cursor: pointer; background: #fff; color: var(--muted); font-weight: 600; border-right: 1px solid var(--border); }
.avail-toggle .avail-opt:last-child { border-right: none; }
.avail-toggle .avail-opt input { position: absolute; opacity: 0; width: 0; height: 0; }
.avail-toggle .avail-opt:has(input:checked) { background: var(--brand); color: #fff; }

/* 5. locked "Number of rooms" when renting a single room */
input.locked { background: #f1f3f5; color: var(--muted); cursor: not-allowed; }

/* "geo" badge = building location backfilled from a lister's form */
.src-geo { display:inline-block; font-size:.62rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; background:#e8f0e8; color:#2e7d32; border:1px solid #b7d9b7; border-radius:4px; padding:.05rem .3rem; margin-left:.35rem; vertical-align:middle; }

/* Rich building-name dropdown (bold match + address line + type pill) */
.ac-opt2 { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.ac-main { min-width:0; flex:1 1 auto; }
.ac-name { font-weight:700; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ac-name .ac-hi { color:#c0392b; }
.ac-sub { font-size:.82rem; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ac-pill { flex:0 0 auto; background:#eef1f4; color:var(--muted); border:1px solid var(--border); border-radius:999px; padding:.15rem .65rem; font-size:.72rem; font-weight:600; white-space:nowrap; }

/* FIX: make the value list scroll inside the menu so Apply stays visible */
.col-menu { display:flex; flex-direction:column; max-height:calc(100vh - 16px); }
#cmValuesPane { flex:1 1 auto; display:flex; flex-direction:column; min-height:0; }
.col-menu .cm-list { flex:1 1 auto; min-height:60px; max-height:none; overflow-y:auto; }
.cm-sort, .cm-tabs, .cm-all, #cmCondPane, .cm-actions { flex:0 0 auto; }

/* Transit-3km list + POI-1km counts columns */
.c-transit .tt-list { font-size:.76rem; line-height:1.5; }
.c-transit .tt-km { color:var(--muted); }
.c-transit .tt-more { color:var(--brand); font-size:.72rem; cursor:default; margin-top:.1rem; }
.c-nearby .poi-counts { display:flex; flex-wrap:wrap; gap:.25rem; }
.c-nearby .poi-badge { background:#f1f4f7; border:1px solid var(--border); border-radius:4px; padding:.05rem .35rem; font-size:.7rem; color:var(--text); white-space:nowrap; text-transform:capitalize; }
.c-nearby .poi-badge b { color:var(--brand); }

/* ═══════════════════════════════════════════════════════════════════════════
   SPACES · Phase 1 — red rebrand + new search bar
   (appended; overrides the brand/accent variables defined at the top)
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --brand: #FF9704;        /* orange */
  --brand-light: #FFF3E0;  /* light orange tint */
  --accent: #FF9704;       /* orange */
}
/* SPACES logo image in the nav */
.logo-img{ height:40px; width:auto; display:block; }
/* soften the two hard-coded orange hovers to dark red */
.search-submit:hover, .np-dd-apply:hover{ background:#d97d00; }

/* ── SPACES search bar (State ▸ Area ▸ township ▸ price ▸ Search) ── */
.sp-bar{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; max-width:1500px; margin:0 auto; padding:.9rem 1.25rem; }
.sp-field{ position:relative; }
.sp-sel{
  appearance:none; -webkit-appearance:none; font-family:'DM Sans',sans-serif; font-size:.85rem; font-weight:500;
  color:var(--text); background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%236b7280' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") no-repeat right 14px center;
  border:1px solid var(--border); border-radius:999px; padding:9px 32px 9px 15px; cursor:pointer; min-width:150px;
}
.sp-sel.is-empty{ color:var(--muted); }
.sp-search{ display:flex; align-items:center; gap:8px; background:#fff; border:1px solid var(--border); border-radius:999px; padding:0 15px; height:40px; min-width:230px; flex:1 1 250px; }
.sp-search svg{ color:var(--muted); flex:0 0 auto; }
.sp-search input{ border:0; outline:0; background:none; font-family:'DM Sans',sans-serif; font-size:.88rem; color:var(--text); width:100%; }
.sp-fbtn{ display:inline-flex; align-items:center; gap:7px; background:#fff; border:1px solid var(--border); border-radius:999px; padding:0 15px; height:40px; font-family:'DM Sans',sans-serif; font-weight:600; font-size:.86rem; color:var(--text); cursor:pointer; white-space:nowrap; }
.sp-fbtn .sp-cv{ color:var(--muted); font-size:.7rem; }
.sp-fbtn.is-active{ border:1.5px solid var(--brand); background:var(--brand-light); color:#d97d00; font-weight:700; }
.sp-btn-search{ background:var(--brand); color:#fff; border:0; border-radius:999px; font-family:'DM Sans',sans-serif; font-weight:700; font-size:.9rem; padding:0 24px; height:40px; cursor:pointer; }
.sp-btn-search:hover{ background:#d97d00; }
.sp-pop{ position:absolute; top:calc(100% + 8px); right:0; left:auto; z-index:60; width:380px; background:#fff; border:1px solid var(--border); border-radius:14px; box-shadow:var(--card-hover); display:none; }
.sp-pop.open{ display:block; }
.sp-pop-h{ padding:13px 16px; background:#f4f5f7; border-radius:14px 14px 0 0; font-size:.72rem; font-weight:700; letter-spacing:.03em; color:var(--muted); }
.sp-pop-b{ padding:16px; }
.sp-minmax{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.sp-mm{ flex:1; }
.sp-mm label{ display:block; font-size:.72rem; font-weight:700; color:var(--muted); margin-bottom:5px; }
.sp-inp{ display:flex; align-items:center; border:1px solid var(--border); border-radius:9px; padding:0 11px; height:42px; }
.sp-inp span{ color:var(--muted); font-size:.9rem; }
.sp-inp input{ border:0; outline:0; width:100%; font-family:'DM Sans',sans-serif; font-size:.95rem; color:var(--text); padding-left:4px; }
.sp-dash{ color:var(--muted); }
.sp-cta{ width:100%; background:var(--brand); color:#fff; border:0; border-radius:9px; font-family:'DM Sans',sans-serif; font-weight:700; font-size:.95rem; padding:12px; cursor:pointer; }
.sp-cta:hover{ background:#d97d00; }
@media (max-width:640px){ .sp-pop{ width:min(92vw,340px); } .sp-search{ flex-basis:100%; order:5; } }

/* SPACES price histogram + dual-range slider */
.sp-hist{ display:flex; align-items:flex-end; gap:2px; height:80px; margin:2px 0 2px; }
.sp-hist i{ flex:1; background:#ffe1b3; border-radius:2px 2px 0 0; }
.sp-hist i.in{ background:var(--brand); }
.sp-hist.is-empty{ align-items:center; justify-content:center; }
.sp-hist-empty{ text-align:center; font-size:.8rem; line-height:1.45; color:var(--muted); font-weight:500; }
.sp-track{ position:relative; height:22px; margin:2px 0; }
.sp-track input[type=range]{ position:absolute; width:100%; top:0; margin:0; background:none; -webkit-appearance:none; pointer-events:none; }
.sp-track input[type=range]::-webkit-slider-thumb{ -webkit-appearance:none; width:20px; height:20px; border-radius:50%; background:#fff; border:1px solid #c9b8b2; box-shadow:0 1px 4px rgba(0,0,0,.25); pointer-events:auto; cursor:pointer; }
.sp-track input[type=range]::-moz-range-thumb{ width:20px; height:20px; border-radius:50%; background:#fff; border:1px solid #c9b8b2; box-shadow:0 1px 4px rgba(0,0,0,.25); pointer-events:auto; cursor:pointer; }
.sp-scale{ display:flex; justify-content:space-between; color:var(--muted); font-size:.8rem; margin-bottom:12px; }

/* SPACES Phase 2 - Property type dropdown */
.pt-pop{ width:460px; }
.pt-sech{ font-weight:800; color:var(--text); font-size:.98rem; margin:2px 0 10px; }
.pt-sech.pt-mt{ margin-top:20px; border-top:1px solid #eef0f2; padding-top:16px; }
.pt-cards{ display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.pt-cards.pt-c3{ grid-template-columns:repeat(3,1fr); }
.pt-card{ border:1px solid var(--border); border-radius:11px; padding:12px 8px; display:flex; flex-direction:column; align-items:center; gap:7px; font-weight:600; font-size:.85rem; color:var(--text); background:#fff; text-align:center; line-height:1.2; font-family:'DM Sans',sans-serif; cursor:pointer; }
.pt-card svg{ color:#4b5563; }
.pt-card.on{ border-color:var(--accent); background:var(--brand-light); color:#d97d00; box-shadow:inset 0 0 0 1px var(--accent); }
.pt-card.on svg{ color:#d97d00; }
.pt-sub{ margin-top:12px; padding:13px; border:1px dashed #e6cabd; border-radius:11px; background:#fffaf7; }
.pt-sub[hidden]{ display:none; }
.pt-sublbl{ font-size:.8rem; font-weight:700; color:#7a4a34; margin-bottom:9px; text-transform:uppercase; letter-spacing:.02em; }
.pt-seglbl{ font-size:.9rem; font-weight:700; color:var(--text); margin-bottom:9px; }
.pt-seglbl.pt-mt2{ margin-top:14px; }
.pt-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.pt-chip{ border:1px solid var(--border); background:#fff; border-radius:999px; padding:8px 14px; font-weight:600; font-size:.84rem; color:var(--text); font-family:'DM Sans',sans-serif; cursor:pointer; }
.pt-chip.on{ border-color:var(--accent); background:var(--brand-light); color:#d97d00; }
.pt-storey{ display:flex; align-items:center; gap:12px; margin-top:14px; }
.pt-storey-lbl{ font-weight:700; font-size:.88rem; color:var(--text); }
.pt-stepper{ display:inline-flex; align-items:center; border:1px solid var(--border); border-radius:999px; overflow:hidden; }
.pt-stepper button{ width:34px; height:34px; border:0; background:#fff; font-size:1.15rem; color:var(--accent); cursor:pointer; }
.pt-stepper button:disabled{ color:#cbd0d6; cursor:default; }
.pt-stval{ min-width:52px; text-align:center; font-weight:700; font-size:.9rem; color:var(--text); }
.pt-seg{ display:flex; border:1px solid var(--border); border-radius:9px; overflow:hidden; margin-bottom:4px; }
.pt-seg.pt-seg-sm{ max-width:260px; }
.pt-seg button{ flex:1; border:0; background:#fff; padding:10px 3px; font-weight:600; font-size:.83rem; color:var(--text); border-right:1px solid var(--border); font-family:'DM Sans',sans-serif; cursor:pointer; }
.pt-seg button:last-child{ border-right:0; }
.pt-seg button.on{ background:var(--brand-light); color:#d97d00; box-shadow:inset 0 0 0 2px var(--accent); border-radius:7px; }
@media (max-width:640px){ .pt-pop{ width:min(94vw,460px); } }

/* Phase 2 refinement: smaller, classier cards + breathing room before the CTA */
.pt-pop{ width:440px; }
.pt-cards{ gap:8px; }
.pt-card{ padding:9px 8px; gap:5px; font-size:.8rem; border-radius:10px; }
.pt-card svg{ width:18px; height:18px; }
.pt-card[data-home="flats"]{ font-size:.72rem; line-height:1.15; }
.pt-sech{ font-size:.95rem; margin:2px 0 9px; }
.pt-sech.pt-mt{ margin-top:16px; padding-top:14px; }
.pt-pop .sp-cta{ margin-top:18px; }

/* Phase 2 fix: keep the search-bar dropdowns above the Leaflet map, and reachable */
.sp-bar{ position:relative; z-index:200; }
.np-toolbar{ position:relative; z-index:150; }
.sp-pop{ z-index:1200; }
.pt-pop .sp-pop-b{ max-height:min(68vh,600px); overflow-y:auto; }
.pt-pop .sp-cta{ position:sticky; bottom:0; }
/* Reset-all link */
.sp-reset{ display:inline-flex; align-items:center; gap:6px; color:var(--brand); font-weight:600; font-size:.85rem; text-decoration:none; padding:8px 13px; border:1px solid var(--border); border-radius:999px; background:#fff; font-family:'DM Sans',sans-serif; }
.sp-reset:hover{ border-color:var(--brand); background:var(--brand-light); }
.sp-go{ display:inline-flex; align-items:center; gap:8px; flex:0 0 auto; }
.sp-search{ flex:1 1 190px; min-width:180px; }

/* Save / Not-saved favourite icon (custom sunflower art) */
.lc-heart svg{ display:none !important; }
.lc-heart{ background:url("data:image/png;base64,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") center/contain no-repeat !important; transition:transform .12s; }
.lc-heart.saved{ background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAABKY0lEQVR4nL29ebhu2VnQ+XvX2nt/wxnvfKsqVUWlMlRBEkIgDJrgAMbQEGgU00IHtQV8FBWwUeLYLYI2bdO2iShNPyi244MoEpVIY6NMAgmQkHmuqiQ13Kp777ln+qa991pv//GuPXzf+c65pxKe3vc595zv23uv6Z2H9S6JMXLeSwA97aYqiJz9/Jpnzv4eRARFUUBjIISIqrXqnOCcxzm33Joq8nz6Wb6WHlBV6lCj0foUEZxzeOcQ59qxNOPllOa7Ma+8k+6tHe/SoCR1cfq7InKibTkLwGcCtO2BUyd1t6ttP627rrkXYyTGQIzdAnnvERFERPsTsnc0jekzHNS6cVpHqCoxRkIIqCpOHM5342kWe3WRm+s8gDx1DMgycJt1781VpEOk9tZaACdMl15bp17no4o0wOXW2kGsDF5VCSEQQgDAe98sop460Wa0qicQ7rPAwV4jaU1srtIAuhujw/vs/ADsrdtnS0hnIZUBuAfQ+Flg2fO+VgatqtR1TQgBJw6febIs0+be3a4+8M+1aOce53okboAdQmjHnWUZWfY8AN20xfMf73m4xgkKVtVEEB12cUYD9hJ3JZGlQRgv6XdKHQIh1Ig4sixT7307ntPaP21R+pPu/1479N69pefW6RS9OSz9jYBAjFHquibG2Oc6Zy/M6nzW6jI9rpXWopl7y7DWro8gMYQzWey5MetuQO4vXPOKKjEG6jogIuR5ruuUkHOP4jPkxedBhHYkPeTsi8FmnCIQNUqoakIP0H2Rd2b7nJxpC/Nzza9roQOwjfyUxrUny+9KpsuUeaLrDhNjjNR1DUCWZeq8+23jqc+X3a17/q5t9LnRujZFiDFKVVWA6RHOuTPXsEGwft/tmhnmLAH4NNa89P7zMZPOvtaj1zqY9+SVZll2Jhvumu/xprt1cMrVFzd9BfIsGXZWW+d5Q0QIIUhV1YhAnmeIuLu/+FlcSwAOMbaT/WwUk87kWZYh/e9jUqIAzfN8rU34//f1mZoua9fqDGVMVamqShpF7Lzyuc+ZG5PyvGJIAdcC97TOzgkAbd7vNyPSLkKIkaoqcc7pYDA4obCcfcmprHAti+rMmbuuxZKCta6dNI+lz6xx4CyPdlnXSFyyKAot8sLMq7peGvuptvNqf9IzEu8CGwFEYzwfq+F06l57L33ZM320KAq890uT+Uy4xipinM8TtM4JIq1zoJV/IgaQz8JUlJ4YiIAkquuPs6oqUVXyLEPc82HZZ5Pw6nq6c9Jn12yjW/Q6aVmHLr2S2FJJDEEHw+EJ4KKrjrfmaz3xWVbY/mciNxGXFrNnK6sisows61yu7d9rSXj9+BWQvuOl125RFCoilFWF6UHL63Jam8srv6bvlQ9utcFV6jLAJcxmZSH6l7C0EqpKWZaoooPhCCfr3pGTg+r10f+89O4K61x/9e8lipw/QZw+hohb8oettcp6c1zmGD1RtA7BVhC4rwQ2oGnmUxSFZllGXdfEELsR9UWBKqwguPb+WCda2inIGi16lcSfLwu1uUQWi1KdcwwGg+flmz2v8nLauBQ1+69FioiIR+efRt/3GpAB7hXvQPNdVtndOua31E/fvbhGee9boKujW9JsV/SPEAJVXUnmM5x3d6HRMwa75pkl5t9Q6Wo7zb279qkW9ynLUv0a4MoKxfadBqdRc//eunGdeFT7HMaATTiCD3wdUuwho0/Dx78JqNP9dvDL66Un+1miIj25vrrmr3XfrCpX3nvyLNe6rgl16O6nMa1d+3OqCMvS/QyZdqqvs3dfUcrFQp14ijWU2490dA0kijjRfprcWtv6jNktmcoRFUf46Leh+h7YeQDGL0DnP4M+/majbBpHjzvRzpqOV0Z48vnz6gXLyKJ458nzQutQt9EqThOHvS6XXKtrHmhntcxyzs+UlU4LXSwW6kQoBsX5J3qXHtepYadOuJkrYKw5g6d/GA5+HC6+GOo5VAvYuh9uvQVu/XuQDJPRdx/rku8ZEBQ02PstIzofaZ1AfhTvHYOi0MYRpKcooSfaOU2JoJXBywy91R96WOnWsO/mijGyWCxURBiNRncFbqeRn5St3SASxmmdqOsupkSLKWKL7hxMP4G+74uQi7toVSNFBlHREBCv6B2PvPLXYXAVNAJ+SfnqD7Zzszas3y2LlaUgRPtt+509cnJdVhVIEaGua8qylKIoknuz6b+Z6mrI9PR1dMurs2bBmg9rNUZQjVRVqQjnAu5S02sHZdajLJ6yhXE5iEeICCtK2YpZ1tprSYWMT/xFGFTgNmAxAYngHLKoId9G3afRT34vffeF9gbYRImaO0I0N6NY8EAn70Of/D745HciWveAtRyVWktljY9/Seu2z1mWkee51nWV7q8S10p7ZwWLYownMWLdg731bCZiAYNK6zowHo/PfP/Mq6USRcXB9P3E9305Ovhc/O4b4NofhtGD1reGVjqvv6IB4PBXCO9/Lf76S2A2RetD2NjCiUeP5mjmYeBh/znco7+Cbn5BYrduzXo0/NchcYHe/lfE534MZu8EP8MpyCPvQccva9v4zK+E4OJYLEpUo+RFjuvrCGdxvpXLtW2udLH0OQUD+gqVpdJEreqa0Wi0VhnqtMFzzAnjBgC6/4vg7iD5bxGe/ovoe18Nn/gOZPYJAx4OiOvNiTROfebvIEMHEmB+BFkGMaBagQswPQY/RvKIPvW/LLW0zP6CAVYc+ty/Irz3S9BP/TFE3o3sXMZdeBkRjx7/+tq1O2Wq659rWXtjJ+cAWld9t6aAnN/J4+Dump+KmGhrPhvb0cV8wXAwXA4arJpFq/baOtVz5aMe/SoyKHAb9+Au3odc2kaPf5Tw/i8mPPFXIU5APEq9MtIIzqOT98Hhz+DGV9DFITqfI94jWkNdoS4gZYXUC3RwlXr/7ejsY4h4a6MZjAZwGVI+iX7kG9DH/jAUTyKXHgF/0eR9PUckwvG7E5c7hb+smIHrzcHVj0JRFIQQNMbYsv92bfvrfMq1npecGbOMBtzFgiy39BRT6XX9u+s8B6de3mTT4kNIlkMIiCvQaYlsPoBsD+G5v4l+8Mvg6FdAMlTr3iST//fmPwGZIK6AWYmGCBKRGKCuTBbHGhZTEI93E9j7iXZ+1k5AXIbu/TThfV8C83+Pu/ZS3PAievsGogHnM6hryEbEyUfbCXZg6F09h9JpS7DOrHTOkec5ZVmqrf1d3lvR5tcCuG+v9rHRKBeaIPZwOKTzhC0rFeuw6gRLXXIBJrlS3yaWN1G/C1VAMocUkXjzSZw6/OVHQJ6Cj3wFPPMjOJcjBGIMgEfjAvbeDtkAdAHzKpkzNVrXaKgRNbegzqZInCP5EPZ/Go21taEBFY/e+GH041+LDOew9SDoHH3uaRgUkGf2fL2AfINYP2caP349ea5xNZ7A/X4ELHE+VSXPc7z3VFWd1my9Nr4MBnumA/CKjdf0seqBiTFqneTuWkBK3024dOOkIrdkBKd71S0cB4jfhCoQ6wq8Q7Y3Cbduo4sjZHgZhtvET/5J9Mn/zWxZrU02Hb8f5h81yq/nsKjAC8TKqDfUEJNzYzaDeIxKgU5/K70niMvRp9+CPv7tyMZFpNhE62P0qWeQ8RgZDYwD1JVxmXxE5g8gTg2OspYBn7Aels2xFT9Y31iISlEUqKrWoT6TiiX9a64OwG2n691sqQFdLBY09lnTU+PoOF2WJ+l0imdrqc/6DqIleEHrBcQSYkDyDLmwid6+g1QHkBXI9nX06e9Bn/pBxA9spMfvAgzTNZRQ12bVhIjWAakCxBpxCvMIdYXEGsIUjt9hGvRz/wx94ruQjS1bljiHG3swGsF4gNQViKLVwvp0OcIcYrnix1826WJSVpsk+uUlWs+4+wGKPM+p67onj1fX0dayF/s7Q5/X5MftBqlVbbZewqZ2UE0c9QQ1a/eH9mzD/qBPvrNAtQQWZlvWlQU1Q40bZLBREJ/dg1iaXTreRZ/6C8jNf2nAmf4WzmFArCuok80YI9TR2H4IqES0Bq0DhBqNoPMn0Plj6GN/ClfkSYOu4NkDRBxuewjVwuS+1kg5M+1cFdXaNPSl6S8DUsxj0dOkO7F2atZnMgsa+9g5Rx3qhrK6dmHJ3du0thbA5idoRtKaRNRVxXA4XOXb6dfyFoqTbfZZ/4oXZmlGFSIBjbVp7/MS6zCgZYmMPBQevbUPzM0rlReEJ/4kOn8crY+s9RhMASoBjRBqpI5obYAWVQgKlSK1uRrj4lPo438WF4/T0tTIwQzmNVzMzdVZLyCU9rOoEO+N/bMclVu/qMt/t0h/F7Onf68oCmIwnePEG3JyjbPGgdEHkKaHO7VctSxL8pRLFGPsCfUOqOvip3dzoJxUOEyRkxhQ72Eyg80AMaJ1aVS/naM3Z3A4R0YOVYfEQ/ST34ELlbUVFCrQWhGNUAtaKwS63xFcraiLZuod/BuopoAzGVs6dK+GqwNT0iprQzYKKCtQQb2YrNcckaK/2nQ2YiMfO1ba8LKzANu20MAlatq6k1FVtRaFk7P2JQFkpzbfAgsNwSh4NBrBqruweXYl46KRB8s+sHWT6DaXAeB3UHVQl0gmRnGLEnKBKiRgZLCdoXdKxGcItdmkR28HGYB6A3BMk67VCDLFBSQmJFQHURFVQ5JsYoiAIrmgdwIMPVIAQdFpDaPcZjSvwGfWWD2j1vso/IYtRfJGqSXs2I84OhD31655Zg0ITi5Wq1XP5nNijCp2nYooWfvuuphrUpzquqYoitPTZNaG0RTV5G1qMyE60NN4rQDEtcENye9BsotoXULmIVN0Oke2c0sRnEV0ZEqODAQOatjCwrtBYLOCOYZ0wSjVftQAG+yHABLsGUWgAMXDIiAF6ERhocgFjNVXQAWyFez9aQnbIwgVUk/x+TVwAzRWmOfLI03CDEB9RAzHCJVNnwyyLfuBJVF1ZjqS2ga8zHvqul7KtV7ncs7Ooi9V1ZhMijzPTftzZ7yQujGb1tx7zTem0SRfs/j2ntLkc9eIBsivotn9SPgAuAIGDo4qGBsRaARmFeRADjoBmWGoulBkLKgHpmkOAQO+UwjOKDgoWosp20FMHm8kJaW2VdF9RTaNEgmgBwrbYmZWqE1hyxWta6SucRsvRDETC4DZx9HDX0CPfw0WH4HyWUKYAHXy/GUIAyS/gjz8ozD+XNMb7pYzvY6KnZPGi7bKMbOTUmHJLKKqKrIsR0SIaGvinZ7JGG2Q049SP/l3ceFJnB6h4QCJc4OKv0DMrhOLF+G3XoFsvhoZPWR9ew/5QzB9N4gHH40SZzUMBMmVeABuy1iwFAmY28n8qCMMBI5sNhrUlGEF7VF0UoRxEeMwAwfTaOHEmRi1juxZFoYIzmPs/ihC4Y2LhBpqkJ3X2bLe+tdw88cIk/+Kc8eQDZBiC7a3yNymKWexNq1eDol7H0fqg7R2K6bkiqXSmFeKtttoOyp2PQ9Jd2XdnydoWW1rpNlfbXJXCkJ3wO2QoxsU6OwjxGd/GH9hDDJEvLPefAHxJpTvhskEbgfUX0I2X4Ne+Ebk8hvRC19F3P9JnFSmIOXYomYu5YEKOhFk0JOts9TvHGRXbFi14Zv9FjSKseQ6KWDRvicTQ/WFPa8zRYYYa0HQQ5BNhVps/lOQKwJVjcYSyS+h9R30vV8O01+CwQDZuASDq0g2sHYWCyRMUalRJ0hWQAy4/AEYvjAt3srWlpWsj2aZG4ukyHNms5lRse9nbXe4kSVotcDVBohJ9uZ5viwTlpppEKM/ppR9ufH5FFv3wcaGUXQ5RavS2GA+xu1cQIhQ17hqCrOfRe+8DX36/4AL/w3qxuh8ammuOUaRcwWvyFDQPTWW3Uz8ENgwYMsOaA4yVzQKcaG4gSDm40BqiDNBo5m5WhjgmClaKXEh+G2gVrQErcBlasgyw5BKMJtaAsoUfexPI7nZ5WQDQ+b5EXr8nDlTBjm6uQFZYetblUicQf5iKFLCwXpda3mtGwJKfmrnnG239b5nX6f/VMk6rGgWKyWiBHPin8hlPutSbIeDKjJ4AcHfh5RP4AY7Fn+Vwtx7kz10r0KLDBmPjTK5iPgZLN6BPvMO/GAMR968TZkY5R4AuyASUS/EI8WNaK0aVwo4M4O0ACo1r+QcsrF9lmizjaWac6MU2I5QOZiBVoLLkiissT62EjIoMAXZdUjKhNHMI4sFknnIC+usDrAXYF7CRoHsbqZ7DnEeXcwRLdBqDx1/QcojMV/6KWDtk9/SlWcZi3JBFjPFOaGXeaMkR0eLOL3UkhBiuyOue+MugG65dkDFoaNXoYs9CAENlcmJvICtbXRrE6lreO4m7O1BPAYW4IfGvjTAxQS9SYQM9FhhouZ2Hig6BypBEZwTdGFKks6AQoiVQIS4UAiRULfKuylXPonD3JCFUokLkDzJ7Jlp/lKAqKBHijpMuQoBCmeafZ0QUAIcBfSpCYQA1zaRS5uGdFWZVHhFpnMYbKKLCnfxK5dc8evIuL/qxog7OPksM4MhnHR8iAiu0b16TgqN0TaKZVl2Wp/tYARhZYTtC/7i1yGloL5AZiUNj9R6gXiFnU24uAFViT5zCMcLTKAqWlUQKrh3jGYZOlfwEO8IEgQnxhDiwvBSHYS5ECtFDoE8KaVRiXOIQfCY2RpKKOeAChrMRJID665aiCFTrcQZ+BFIEJiDHoOMgTKai7Jw6LHZXRIj3AzoYUQuFnApQ1yAcoFWldGOc8S9PcjHECaoXoft35FYaqM9n01Ena/ZPokIPvNNkt6Jl10rsnsCPcaAE8E7v4o+p3SXFK3GyJdkS+3+LqR4BOoJDLZg/9gwPmoyNRa24jsF7GQwi3AnQDB5pJMUaLh/CJlDnCK1LTTqcIUQZqClglPCwgAU9iIOIb+SM9z1bGTgBjkHc8/tY8UpZAGKbUd2T453OXogVHOIwWRcPRHTsRKr1n2QYUJm75GxQyfRNO9SiDeiecaueMgt9qyzgE5sczte0MNjWChs7qBHT+EuvM4UtFhzBhWtLnkfIADkWU5cCfg0v7PGOG49Sikdx3alc0L+rrOb+7HIFrtiADeC3a8jPvv9+KsvRY8Ejo5hY2RsrQymhWaKyx26K3AcYT8go2T33pnBpTHywAZ8fILkSthXxCcWq0J1CMW2MBwBmbHzO0/Cz/yqsPcpx6sfijz+UfiJn/csKscffE1gx8FHfknYvq684bVw/4YyqhU2zbSKM8FvAKqEY8NtKQAV2BK0iujtgJSYaNhxyLYY6/aOeBjNYtzxZostpshhBdevQpiidcBd/9YlQN0duKYjNZkyDef1ScFqHFI0Fg90W1cEQTVqHQJVVTEYDFbrT50EsqrlKmlsO+4QwtBGZ4+h73kl/sIGmo3h5i2jhFEGZQ2zGq0rZEONshVkLuhRhMIokzyDy0N0v0I/URJLqCtheA2qOcz3lO17PU88LfzcrysveED5t7/oeN+HM7Y2hGkVKDLh8maOF7hzXDNX2MxzZrOa7ctz3vi74MMfg9d8oeMrXinUBxW6JVCCzMHtJM31Xg9jB08HdD+ahn1JYMMQTgXiIcjQ43YzNPlK9PYCubyLbFwgHt+A7EuQz/t/OWFmfgaXiDA3p0cDt2bb5HJWZYyqdW273YbDYQOnDqInOLSuYdv9+xF1Hvn4t6MHPwo7D0F5iD53G9nwyNBWRKcVelThttRy6qKDCuJBNLMoB4YZcjmneryEpyJVqbhcGN4rMFU+9hR8x/+Vo/MccYr3sLNpMesm/KoI3gmZS0mwySd9+yhwtFA2c2EeIn/92wK/51XOkgXuQNxILsCL4K55uKFwOxDnIBdBNkhJBRCPBNkRZEsS8gN7Nbo5QHZGiIzQ/Rvw0p+FC7832W3rtefnA+C6rlksFi2AG6u4pWAFNEYtyxLvHUUx6ALT62DYAreRwHICCYRkdi2egve/GkZW8EXnc7h9DFuZUXOI6Bx0v8aZXyQ5I8RMo1xQp7DhkauO8l018SBSLuCnPpTxsRvCp28otw8Lrm4b4KpoorwdbhqaE8uJR8XiETHiRMg95B5mcwhZyZWLjrGP/Jk/oLzgciSMFX8F5BmBo0hciJlLIzOXYiWwALnizEmSjFE5iOgoh80CnCdO95Gdb8Y98k/QzzrFtg8OZTabkec5WZa1AYgOwKoaY6QsS4rBAN9nz3ejVJuLmRbdR3PiExDxhKffij7+nWTb28bSq4juzWEoyCgpXjXonqKiuM3EritB90EzUFG4mOF3gU/U/Iv/x/F33lbw8GVPUKUoGrdeM45lD1unKsiSfmHGULNvQSgr00lu7CuveHTBD/11haESPqLoDMIMsouC27Z3w9Q8j9k1MaeMEzMGjiJsOGQzQ7VA44y63CZ71btxg/tsWG1AoiWTlmMu6Tt34eQiwmw2RcSS9Jyz4g0SQ0PBqnVd0+Rbdetydu2oZRj3C5El6tZIk/lYv+er8LP/gtvYAi1hXhP3Im4oyGYTr1XivgUD/Haa3tSc/3EoZLnyzhuOn3uH8K73OiQWbAyUqjat10kH4GYkrbGvJFDajEUa92u3xIqk4IeiKtyZ1dzzUM0X3a9822vVPGgb4C/Ze1oKkgmyq5CpuWQXoAtgy0wwFUG8t8DHi98GF35/QqpmkYMhPSn/WiwAcqrBlOTrKoAXiwUhhE4O02PRMUatKtsq0crfs66EUY2Xs8O0tNdJfOu2bO+FOXzg9yOz/2qIo2q+4IM04I2U2qPA1BFnimbgckUngpbKe28I3/3WnHGRszmGouj3n7TMBNAuNagbcEqLsgWWHrhbrRRCbNoRyjoym8LePPKXvr7iDa8M1GN7OVZCNgS3BeqtAV0k78COoBmWqJB7xEe48t1w9Tuhug14KC4ixRWQrLd+tkVmXXb1UjiwUaKamYlQVRWLxYKhVVMQ6AUbzDwKbb3FtRul+sDqxpP+CAZU5zu9rLwJ88egumkZh9kWXPtW9LH3Q9hHgnmhZFPRiRJvKW4sMBJkYA6GcKBoLuSbApcdv/qfBJ9lXLkEoe42ehk19gAq0mYddeKiJ0JaXmj/RzqWbfmEdq/IhM2LkE08v/Z4xVd+mTBSpZyDHwsyToJ+LuaMGQBbMUWwBB04iy9PHXz6/4ZP/TCI5V2T7xCLe9D8IdzWl8LF1yObr6BxWWq0yn+CW3FwdAvfh0dj9VhYNyFp2l2odR1aLaz1YJ1yNWxbBDRa9j9gbOXoHbD/s8Sjn0fmH4SwR9S6pRSi4FwOI7VAwlTR4wqtzInBJAFtw5qNC6gO4bAS/tmv5Lzz3Q4NDp8c/k0ktA9MAHGCS2OEVINzGbq0OVFKz1HQULKkup1GOVWI3JlEXBb4c/9t4HVfLEbpqhZazEA2BMkSIDYcsuHMtXmoFrgoIuRDJB9hpC+WiVnPkWqBhjHBfR7+6hvhnm8y6gaLk0svJtBwz8aHoWL6CTCdTpvNa4iISDQfptZ1TVVVDIcj8+uekemX0AQL6oslut36F8itHyPO3oVkNeRb5uEXlwLpJRpsIqQkNzY8DMXCeYcRDhRmgTCDMHe4XPEj0EL482/1/PqHch68anWiGwXfO2lZcOOllQR4c6M3ukCCLT3qVSX27vXZdGyBLa3NHyMcTITRsOQf/oWaLaAKkG3YOCUTdCSwpVCIyeGDaDrAyKGZs+BEPoBsZKFTye1vV0BYEI+fIx7v4fMHkGvfDtf/BOTbrEvtWRXFIsJ0OsU512TgSIZY2aAGoM5JEmWy1BBIV7NZsD1AsSY++cPw3D9A5GMw2sFdut9cPlqbF0LrtCOwMkx0YvlOATisYQJsZsilzBwLz1bIIuBzCAvBTyKfmjk+9FTBQ9dp49Kd/60xf/qyF7wjIWqrW9nY20k10OyxbzHFShPLj+poiBQBFdjeVA5mjuMj2L2maDA9WL3AFW8ZJYuA3laYRVuKTKBSWIQU6A+om1ujzqXUJI9kGa4Y4a4+Yq7c574PvfmPkfv/Klz+71qiamlsjRYmIsQePFte3GRKrpO/mtC6VVZE0KNfRZ/4HuL0l3FbV9DiYajmyPGR5TA1aasxGBtP+U9oWkhJY60VFrV5rTZA7hPcjiM+oegC3K4FnHJnm66TqxjXmN3SUWzLpiVVgxfbNLcshdtZoUAmZg/Tp1YRYlvrw55tnSXRhvsD/87xl98E914S4nZAttSSAp8V86mnFGldiLlcnUIGkmtKN3JIkdv+Z+9tqwyAVCmxfwiXHkRuvQ997t/grvzhNOoOkCd2bwqIc4Sqy8+WZhvoYrHAOcdwOOy9uM4sCohkxE/9NXj6+5FrL4Uwt+JhCtIKumDhGU05TFWd8pQVyoiW2CIkxFHFQh9Dh2x54jAiR/Af3+54y085Lgw8uXeEqK2zQkhRpZStkiWgAjjfJdULusSWG597o31rAlzHnmnlcVCoo7FnFXuujspTN+HzX1bz977f4Y8q9CiiC4s3C8k0ygVGCiNjamQGWLy3jExnX4rLjSPiUJeZAhZq4uIAPRqTfdG70cE9LStZp+w2QC/LkrJcJFHrJGugeVLmngSuffIGzBf8Zepb/xF/573I5oMIJeQ5xIio7Wc1BSAaX8wF8Q7NFYaKq0ErzGacKDoXi/MeR9yeIoWwJzk/9HYhD44sbVH1bU0CwUkb405eM0AM6GYPd8pXU4KilasqtFmfGPBi1GSgdPN2agiFKDEtrXfwknsdTz3j+OSvVbzosrKYmzfL5ZDtgBs740oZ5m51xuO1TL4BF3CDGnJH1GDashNYTC3/a7yDPPcU8sIfQgf3GifE9Zw4K8BtxpvcowmBNVNY4tknXtHlP82WjKgbkb3kH8EHfhcuKupGMN2DIrcMjZpUD0NtJ0EZicFkWyM4xSsMAQ8yUOIU4rFQL5RiLBzeCUjt2Rob1RReaOoCGkF2Zo5IozUnXaIFsrT3STI2tpPx3X6hhvNEQ5ZIYt1i9roINHzaixKisjmG8SAyvaOoE4pt8JvghoBLyluZ9rolelEPDEDGYv5rh2VxhhIObVO6271OeObdcOlP4e/7oxZOFE8fOgaQNUToGtFiBJZJ+6xFhk5FjXZRzLwRrZHNV6Av+afEj309cul+21JytI86Z4lnvqlnEZMrMqJzy3si2iK0yYDOwnN+oNRHwuR2ZDeLXN5xTA6F4cCkpmv9eH25Ki1QfXJldWw8jVnM5kYsHowzivZJiVI1Km7EhaT3Y2hXKN0zBIsKR1P44OPCa1+qZNuKzxKLnyZRoGJmUiGWWjRQXCG2GdJHcBGpKvRwbtS9dQHZukT9zHshfz3+0beav1q6Qz+WYdMBJ4Gm06PSGi3VqjQNeh0DoDMypcGUtD/2wtcQH/gHLJ55HJUKuXAZ8SPLzjg4RhaWpE6uyCgiWxG3BW6UgJMyJThU4hGEqYCHwRXhf/9pz5PPCOMhLSdpBt7YwHa0TkO99ttL/zublzhj2S59boinUdIau74/V+ndd73px4Sf5Uz4Wz8pHCu4BdTHmKipTKmSccTvQLajyDBFyhS0ipbac3uOHlZIsYlcuhcZ7xJvvAfcl5K98seNOOgQ7DSwdFePohtlFFjCjFPAu3xDlagRxBPrEnf92/AP/yjxuX2Yl8jWFWRnF4oBOlmgN+fEvWC5UjGNITOsdpv2w9AGVs0FN4df+7Dws+/JuLLlqYM23S4NvMlPatixS9DonB7a3vMkjijgGmGztI9XO3Or1cql1diXBqBKHZULm3A4FX79sRzZ8Ja3PQa3oeaJ84YNWgkyFzMJDxU9UNuvNhzC7hZsjC1v7Zn3I8OvIfuCt0O2naoC9LX5VjgtgaUtldEDeJPdkfUBfN4iXoi0JXKdzyHW5Pd8Czq4Dz7+PxDLJ5DRlhn3+QCmCzgObTJ6K/dc06caux4kAAzg1gdh4JVBbpZUkwXUUFpHbdL7leRzQ5VOjKW37LzTQE86PuwPFcVj2nO7ai0eNOLBEKasYWNDePBq7JLrF1YeptExXGIVmokl6w1ABg7JMzSlROnkWer9Gf6eP41/6Vtpt3CsEZl9d+WyeE3jX+HAZ/skVxvvK2LNLxFUvJlDF18PL/8F4sf+BLr3C2QbDpENKByyHWzvUCnIcUSnoKVapmMQ+62AClGUL7gaubIVmZYwHKRIUTvBDhH7ADJq1SUXJS3gu8/So4ZebAms/khCAG1tYpJi2JhaouCcUtfwwmvKi3YD9W2QQtDMts6k8l5QYP7pXM3J0wjFCBImUB4S3cP4R/8Wev2NSfu1yNKpbDkhbJ+qkynUWQWNXz2Brvfi6df6DWoJc/FoqNDhS/Av/y+4B/4+sXoApkdIWUKtSBOF9yCbgrvg8LvgxmYSeoEsRHwlSHBkmZA1io12QOzLxr4sboGZANWRqnYOEDBFSyxq00A7qq7s8LX3GtbfcI5GiYsq7GwITz7ledt7HfmuEBy4QsmG4AeCFM52RXoxanRi/ncnoIHoXwwPvgX/Re/CXX8jPtbtmnY2SydTG8A1NvrSWPssCVqszxoNss0AkA4DVr9bBXazf7jV4FyWFk3gvm9Hrn4T3HkbeuNHYPoOy2zwDhVt9Qch4on4qBCUMBOyvOAn/r5ydOS4uiss6ibCk6bcI09JphFqWrKKuTBbKpb+mOnMvh7b1f5yinb9tLZ1Jxpaj5ZCUGWYC7/wcc83fIPiFsEoNhPUu6QoNEph4j8By1RZVMjGVXT0Upwftf2jkWZX4nJ4sFv3PhzbsS+BqAN4Jiss7zyXJej1YpF00QwaikMQNyTKFuJGSOEth1PS6tSJeKItqIS0d2gewVU8c2gbu8toDgjpaTtt+4li7WNDpY7ewBBcigpp66/vGILr3kc65GzYdJpnp6M0q9lB+fZMebmLcNOqBsgGSK6oj9Zn+3hM5SQSp8kEZr8IH/5F4ujz4J7vQa79kSRCAopfQcTlq/91e2QA2pubXVmjdbaby1aBeQbb7oghUXtsbDaQm/8cvfG3kPkHzRT2udXCqNWiSXWDzUAJWoltFZlYebPf88LIO39T2I0O77ugQhpVi9mi0trSJi7Np2h7u81lAfb30jz78xLSOQ3Yu7rKCpdlHiJkXihrZWMceOMrA7PHTeZqDlooeMWl3TqSm2eOHHNyJDkt2RB8gYaPEB/7o7i9f4N7+IdhcK95A8+pImk7FVn9Yjnjq28sra+zke4ux6gSuw4W7K9uEj/yh4iPvQn4JG7zMgw3LNrSBHErLEA+FXQmZjvOxRLvamF26PiSh+Cha0oIkPnG9JFl4AJIb+ETZ4qqS6w0kXKrxPWHHzVlV6b3m10dLW9ugd2sj+JQnFMybyJ2Yyz4HSHbEdx2ctiMLC1cBqRd2GLZK6US52q1Q0j6yOgy/uKDSPVzxA++Fj34FbQpDbVm/Tsw6dr7TUlIALdUgmc1OrH64omeEgtLrjSd/Bb6gdfA5CfJdl+AG+6gUkMZYBLQ/RoOU6BBTOuUgeVjybYiu4rfha37lcf24enbjvGwEwexHaf5kqOay7AOkRC1De01v1u/M51WbE4KaQMJIWgX++3Nv5HMYUmhkUQdQh3UsjAX8NHnhGIToqiZe5niB4ob2eY4NwbGCiMsyTC3zWxMAkwWFlZ1EbYfRAZ71B/8SvT2T8MKkE9w6xUibOfZ05sye27FfF7z4vrIkqIarGbG4S8RP/p1lsIyehgNU2Q2hckMqWxPLIXAMJreEWk3YkulxFqJpRBKyJxSOMfBXLhcgfdJU0jAc8lyUYUYLejQTL4JFjSU3HN89WxISZp/I187fUKTYqXRkKdbuI6SI4YkRzNFnPLQC7xliZaRugKc5ZG5gVGwFPaDxziZA3Ee8RkanWHJvILxAjau4P0R8aN/kOyRt8OF34tqCjSsArhDOwOqc73Kg3a5vmw7NYujF6ZKy5O8JxFxGRz/BuFDX41semT7XpgfwN4+OlnAMEN3h8hWZt6qLLH0GnSuxCMlHEJ9LISFJCAKr3jU87pX19w5TjGchkW2/9mY+t9HVWI0mzmoEmIKpMSY7tmPJjYcVTuxlYAWl1h8tzrN94GUkqMwC4E//rrIS68q0SmDXSi2lXwTXPLMhYVtfYmHEI9AJ1gNkWjpwRQOtjdhcwxVCQc3ET/GX76MfuwbYfpBmnrZJ2HSh3KngHYpVcnR09w89RzDRAKdqDPKxXmkukH14a+HbQeji+itG+jxFMYjuLBhNZnFFpUS9BDCHdDjlNKCYXm+AYNtJd9S1EF9q+Z7vrrm/nsidWXpN9BQj6WW9llnA5Q2CqTSLkLEvH5Rez9NjFdJ7N50vxCN/Tfz7cSCcYuWkSncd1H5g68OHN+IHD8L5YFZAi4HPzTW7LfAbatVCBgouJj2JYOWVn2PWFuMeGsLHW3A/BgYwWYgfuSPQD3lhEp9ItCgLYANpPa8OQtbRanXQN8cWANvW7mK6iNvwhV7uME1ONyzPNbdXSgyW9Va0YVaFKkG8pQwvqvITvLb5oktlkK9L0xvWYbizT3h4NgzGhhUpAFU2sOkWPw2Jlkbk1xu2aiaXyXELmuy2VxXRyUETbJb0y4HWpbdyvBoOw6jNlmNQoi2C+LZI+HGwrFzEfKBEislTFIi/AxLxtO02E5Mmx4mU2pDkLw5qMuZ8hcSRxxvglYw2EXjb8Kn/jLNWU+nXa2Iak5tMwSVNlzYz+XpnByNptrQiWmwGq3UbnzybyPHP4e7nNJ1xjtmltRVwnRnVD6IkAcavwEBKM1M0oUQDrH0HCyUNxwpOcLFzYzgArePHJsjt+ThaQbVABNN+38T5YWoROmYrJeeLI0dsEg5WK1ilthvp3j1BEJj4ws8vR8Z70aufb45NQZHaiWe5o32ZpxAoprjOgNNOXZt0CJr4uPRrJCEURJ9a9e6zSvEZ96Cu/JNsPXFtBXlm7VIdnsjWqPGNggjiNnBjaemv9OwAXoPvrQMTzLi0a8Tn/l+/KUXGao6sFqNKc6pSRFqNKNk/2oNzJU4SRgek+cuT9kZI8FtCmEsXNx0/PE3BH7gx5QaZXvk2xhvbFkRtOZR62qyiUvSHVwPQc2JkbToHr604qdl5Ymj9R0f0dZktgiMxzXf9frI6JORcEnJrnrLmCzVNopP1RLtBLN5heTMAS0VyWpLsfURXA2+sk3l+RDyIUpN3H8CLS/gH/pBGD/KUmblEuV17DqGXhVCkhbd+FqbMgB9l97qllBrT4nlMygFevwpGO2C30CqCspjK18Qm58E2Cp0dUYiplEPLFvC1YIWHt1R2BQrpPJspH6i5msegRf+eeGv/KMCNEsp4JaT3KXMGmU1rFgA77SdeFSxbJLeHDRRfZ9KSbjYmkaJolUkyXAzuo5K+IH/PvIlL4hMbwtFGYnHiuzajgYuONhxMBczharaXJh5SssRTcAcWMEWn9vfTpBQo5Nn0IXHbf8xuP8vwfglrabcXCsSub1CCEtH16ZwYY9Fx4g4U4yahVu+LDfKXfpa3MZvUn/qf8Xt/yvc4BgdX0KGFwEP9dxqOEbLrJRQQbQqO1JjcnkKMfe46wPbHzyv4Ga0fUgLqEvH4ki5N5GPBe7F0oDENnigPS9XGqsTUvKbtgtqoifZsU2uViNv6ZQw7SDbatWqKabsFY2OeaXs7ig6tLRUrbDKeLXCRGBTYeyQsYeNAiYePS4TuxbwmR0x4B1oQKsFOr1hKbjZA7D1R+Chb4GtLzRAxtoids2lSlw1bWlSr1KpRwymjS9MnLM4VrO7/wRcE7tqs5E1osMXkr3kR2D6P6I3foR4+18jPI4bb6TM/WDhsehpE/CawmFB4JKHXW8m082A7AcDfoD6yM6wcgPYviB88YsDP/VLcx66PsC23TSU3Njxlp/skk0VEityvdrMrTyNppW7FKRIdNpq1w11mGbeiCulqpWbk4o3fFngcy4olQr5rvUTa0UrLM9sQirfEFPw38NggC4CEhWpS7OXZzOy7AKavRDGn49ceD3s/j4oLieIheRX8csm7Brgthw46T5NlVJpFKu6rnU+n1MMBgzPOFByBeo0MhlAF7fg8OeRg/9s0aPyo1TlseV2u64KYJHnyFaBZhE9qNAjqz5DBWHfoZXiUwhRU5Gzcub4l7/h+OUPCnt3howHCTAJQOYJ1Y6aG4Uwfe6XPWiTDCQpjhqNLSctOmrPvsYQYVYpG+OaP/fVNa96FKsHUloOWb5BF1lX05jJFXXmj1bvbQNaFuDStyIX30io7oDfxY0+BwYPtCUQDQFTRaJWIHVicvXU9FaairBYzJnPF4xGI7z34pzrABxC0HKxQJxjPBp3Xp92Ufpw1d5CNQ9FVFqdzQIPi8eJs09AfYBjYQteHeCe/V4kHsJck5Nf4Vio74AWQrYZze6toNyz/biDLYe7BD/zs8rf/MkhL7qnoCwjdTBQeqct9TZ+64YqSSKoyaVGGpMpEUpPO9fGno6d8jku4FM3lNd+/oL/+WtrjubC5r0mferkds23rNiaJjYiNajEFOxPlQw8qGzhXvo22Hlti3zWdZ3G3IiRc9DXCoAnk4mVcRgOyHwmpkU3D4rgUu3DPnDp9dWyCZGVfAOh9bbEmHYtZDB6ETJ6UeuDcUD80FdDuUdszCcV9DmBGrJ7MeFZYzJ4H8QJxWXjFLffDw/vCNd3Sh7/tGMwFLaaOmra5T33szSawH93KExHmiH2I0QpbNmSvLV1OIs8eUd5yUvhj30N1MltWu5DcQnywvKhwxQL+Y4Br+hAIDhLsPNqaTout7rWH/oq5OXvwG08aoEBtezTdj0bxZG7w7lVf41IrbZZL6NF+rZvXVU6XyzY2Ngky7rdbH0sWXVm90exFKBujF5VYqgQX8DHvwW584+tpFKcQoD4jFoC3q5pMxKFcKRUdyDbELKBoFXk+GmhquDirvKJ54Qfe5/j5jNw88aA3aFnkbbFtPle/ZFrMsF6C9i4HpvAizjbpSe0W4W4eSBs7C74rq+pePQlGbsPe8oPl7jaUo0ohGwXK3PohDgXCxPuALnJQo0CswAjD5tD0AFxcQc3+nL43P9keo32kxie36WqOHGEGDg+OjLqzXPxzreE2Potm7PkmzKGHW+WtrHm+XVopP2/FdDkCc2G6HM/Trz1j2HzWqpx69EbitvwuCuuCdIQDiHOheKqkG0Y+y73hCyDrR2lKoWHX6t8/x+t+bt/PJBngb0jZb4wa0Qk1QLXxntFWsTGu6Wdd6vRnNvnDHmf3Y/c3FcWoeabf0fky+4Xils11Y2S/BGP2xDyLesrTpJmnNk+KimEcIBFzNKODrYL27IzDWgmyOY96Ozn4em/j67xM58F6lXNSJJMrKrKACq9A6ZVmyo7aeIh6Hw+R0TY3Nxcsn8bU6qHOqkD16Palc5Jum48IvzWK5H8pmVbVjPiJ4+QrQzZItVvVuJt83q4LQwCFSyeBNEUjluAe1QIdyLhcXAZ/MoHHP/63RnbI+WjTzvKecbm0DaIZZJYMpbyE6K0DhJSF0UGVWWmU+aUT99WvvGral4wDLz0IccjV5Q7T0dGl5U8A/dwBhtC+HTAxWgxXsXmUahFzVQIE5AB+B0PLjNxcVDCeIhcvAKLY8JBxL/qfcjgetJrlgXfOha9av8qRsFHR0eownCU5G/jpOoVYSEVYdGqqtja3j6vnD/jso1q+uTfhmfejO4+ADqDpw6RcQYb0Qp3zgPxAGTDDsGSYCZH9aS1km1aHrF/OJXqf1yRoExvwvi6eaTcXPnPT3je/H9mjDLH1tjY/eVNR1DheAajoWlc+1MoK+H6tjAvI8W45mgiHB0rX/s7le/+1kj16bSRbAjVVCAGhhchOkEedOZ6vKFN/pxR6Fit4q3DdgwuPIp55vAOxaP7c9z2LuxcIDz7Ufz170Ue/J9STD0Duly4Bi4n2bfttLRMGjPtDg8PKYqCosjFuc7RIf0Ikp0mWutsNmM8HrfH5yzLVtqIhV3rNT6LTwrUR+h7vgAZTWA4Ij79nDnZL+RQLmBaW33mLXM8aAzoRAjPmFbqtwWdRvQ+ZxrpJxWplXAb3BbICCafNlY7ugi/+i7hxj584ZfBv32X42fe7rnnivCSByK//B7PjQPl4XsjL38g8v7Hc+69GvieNwfm71Pmd+DheyLDa87qfj8J25fVSlyX4LwiQ4iF4B/I0SjosxUuN0qKx2qFTHcEGWTgc0LtINqWFXUexKF7E9zV6+AW6OQS8vJ32kGZaqDrTJeVRU1u0y6kZVx1Pp/TwCzLMukXsMuW3xerQSy2DbEoioQvyyz4JKs+CWEhADnc+Q8Qn4DxI+idZ5Hc4y5toOXcyur7DLkYzaMTgUMh3lL8RYcbK3oc4XpuVXieLBFR6mOxQPq2ojPzNY+vCrND5QuuR7ZeAmHX8V1vDHzVPcr2MHL//fAzDwV+4yPKN38l3FtEblZwZdOT7yj1QyBj5eAI3LEyvKxsXnLEyooVSG62ryXTK/FmQO7JkMsZesf2N8uupR6xj1XY2RLcwJIHISlSzsOFTfToCLn2AuTwo3DwX5CLX4M2R+MluunBsV1rASvZ3LvKRYnvnd3Qv06kzouI+Cyjrmv67PvUS/q03LgYADEFK+79pJ0YFhSqGrm4ida13S8K3IZtgKZy6HMRXUD2AofsWIiRDQ8XPNxWK1abSvL7SyAeqomSbQluJLgImsF8DtUucACf9zlwfQNmM+H3vTLy3a+PPHgtUlZwbRDxoaa6rXBRUW+RuvrI7ODBRSxWHAT1iozE4tq5IGVAn6th5KwehzrEO9yOQy7naC3orQUclQaUPEOzHPBIMYBRAbM5mhforX/XrH1rorVL27Nkeh/bK4SaOtRkTU2OFSC7PnE22nRzomhZLnpYcX6JbIqrR6s9ZPKryHATPb6NbI9oojn4zHa4Rwf7NXGvRscerqc9xEHMdrxcwH5tZQUL4FjwF5NCUwtaCdmOdRoqKAoh24bBRSWrhToEZiXkm5brtwikqj0wnSkxU2Qh+E2QTSjGFvEJpUJhOWKLA0VywWXaetdkIEgdkTsljAR1EVwAP4DcIxdz5KLVKNH9GXIwsfrYuQOXI0WB1lMkHyLTd6TTWnxHL9oQSrf+qw4nY8+WNeG8a4+DXwbwmss5J977dAJ1I+T1hAbXddSMqbmbUlWPfoNQPQvqbWJ5Di5D8lTWfn9KvDVDfYG/d4zb9Yg6C+LHAJsO5gGdBztoY26smW0sntFQ70CpS5NbPgcuiD0goJngCrEdBwXkA2eFy0Zi5k2RtpN6D7sCudWOCVNQp+QXjCvEhaYUWDo7u8DSgOcR3f3dqL8PyomduYhHRiO4fAm5ehUZ7iALD8epWHWMViVePHX1aVh8ytawNcwbapV2bU+oWqqUZWmV7aQ5JGuVght20LNxRayUfwiBqmrOpj/ds3IyMJHiytP34TILULvhhm3YiQpHcziYgc+RaxeQSxuQZcbmYmnnJlz6Bur5dXS+sEImApSKXPRI7symrQR/AXBQzUwZcoUgu84qwWdKdGLpM00JBQfqFTfUNhnOaoWIlRJ2ymAHXIV16pXiim0VJU/5zIV224eyDOqADB9GXvZO9NpfQXgYPTqg3H8WnT0LUsH2Nnr5GmxfRrPkvI6GWE7vwOzDyY+gPRN0maS098l8zwtQbUoXLoVOmzayBkLLglvIskxCHXQxn1Pk50jAbqEvNLviZPExZDCEwbZhdbmwWPHGJrqzi0iAagKzA8K8RGKGbL0B/+I3Q8ypnnkNbjtDJCIztQS1DdPpw56zes6ZabiUVkhdJMntebQ61CK4oVrSeQWkbTNOIC+iJQHmoItoVWOLZL+qEKcgA8VvCGFulQeysfEyCWY7q4sWGDh4G/LgDyIPfT/xBW9G938R2f9PsHgn4ejT+Phk8n4oVpQTYj0i+l2keBRJ21caYuoWtQ+V3jcK8/mcLM/a6rIN+Z0I+Pd4bNKkjcVlecZ8Pqesa4o8Xz6zcPWSPhux/6vJb+HDHD+9QSxnqC7sLOCFR6YVWkdi2MaNX4Vc/Qq48LWw9cVm2z3+veTDKtWImqOLCtmy7S9aWWTfXzLOExZW0yQbWwBAMk2Fx2w3n+SYYpQZcDWl0PgCxIvJ9oXaQVgDMWfLDoSDZAsPIL/iqPci7DRInFiaF1QGSLxjReB2vxL1G3Dlq8mufLWJjeomWj6DVLfQOE9pOgUuu4QrrkN+BXV55+zowLF+qUVYzOfEVJey0Z3sJW0e6gH4RAMOkYj3XrIs0/lsRr5S/e6EAb70WYgacdf/DDL9UjROwO2ZCuw2IL8MoweQwYtxxSPI+MWGuUAMpeUMz34DRgPbRD4LIDWMM8gCOgW37YxVVsBM8dvmsyeTJjxkGRRZot7MfiTDLBHBMtJSiQWqlCA4dEgZzZ4dqe2+2M4RBFcKoYz4DWfH05YJ4fPcDrWcvQcu/H5cLA2LEsCkuNJVrVumieX1XPE3dE/pEsBVlcl0YsfNeifiOgCvJk+uAbDx2sYmztPhS2VZMhgMLKlrRRI3wFltxl99E8Kb2ntNGYT+YIFUgsnqMjpfQH1EKD+CHwyRLLd9S8NU0FlNe3ZNmcB5wGWKbAlxGm0vcpKd0gA0p018a2WxWJajBZIxl2OIyDiYZk/E7Qh6LDD3MBbcrkePUmXYzJv3SsUqyVbA7ENpQVKmpNAl0tFToJp5LylF64Db+TaaRRMnzGYzQghWKkkcrl8cLb0kmIh3PbToZGgCmve+oWJm01kbemvut40mod4BL1FzTFsXYjplO9aWfpK+I9ZIDDTMpN2+HI8I4QB1uTnjA8h4AM5ZYbGBR/LkFZpgSlUuuNyKcYuIsXKXgOklnTZmOcsNUDVLWrHHjtDTDXT4YrSIVkgmd8iORw8rUI8UObJZEGs1UZNnJk4zZ/uuwl63yEusMukltguv+1mq/NGIuGXi6dcsa9KqJpMJRTHogvqnS83+foj1T4kIeZaJosznixMZBR1ydMpBO0gx/6uRUoPVnoac7KBKZ4uQUNUWpyZzEVxhXiBRS6RPz8o4t7qPRwHGHrYyG/7ITmbRILZFJPNGvWAAyJ2dWJpLE4mgSdNqqFjv+wHi+F7bkU9uMnkkcJDs1CKHYmAeqcHAKN/l6STwWbeWcgqgVv5eBshJKm6JJjlBJpMJAEVRSHfy6ArsmoQMLPdgqaVVj4kTh/OeLMuYz401tL7O9HA7pNN8IQpNQL79nCa0lBXSji8gLiLZyMo+eEHy5AUaWAaiLjD2fGVggM8c+Bq99y+C27Uzi7LMgIwgWYbkHhk4+857w7lcaKq0RHG4nd+Ne/gfopm3w5/VIzsDVCLxcIF6hyuGRvp5Zg4bMqwsU39XwfqrrxD1N9E367G6lK14E6sHPV/MGQwGxl2dO0HxqeH2XbeEMTa6FvqCZTF6A7CAlatdAlw8e0JNu0uaXg/pGuWinXB6oK4UxCHRmaLlMosPZoVR4/4CLo0s71oKY/mXvwX5nO8Dt23xQedNgQJ732dIkdn3TYJ15kwFF5Dhg+AHuAuvh/vfioSZZT4isDtCFyU6rZLDpjA1PM/bwLPI1jJ7XnOtUnJLgcoJ6m3WpPl6MpmQ+Yw8zy2g0Lg2z7h6pAhd5Lv72CQCeO8ZDAZSVRWz2Sx1fBLzTp1YJ7xPvdciVraNMoY4MSO3GCCSajoWBbo3QXY2kY0hSgbVAWz+XnjR3zOxMPpcICKuMDZK4sE+M6pzSaX2DgY56gsreDZ8JeI37Cyne/4UPPhW4nyCxhmSefzlTWS6MJOtGCBuAM25yrGC4l6bx4oy1c7zXImMLK1TjBFxVia4rmsGg4GcFlhYdy0VYVn+q0MOlxSuzGfkWS6TyYS6Nq33ebio7dG18c1e5xrBXyAfPoCGGiUd7y7RSjIdlZBn6IUx4oYw3ycWXwqP/IR9RpGt19oxsm6MDMf2vlqhT83FAKwOCqvdLD43bXPrtUkLtXzleM+fhYf+KWGxAYs9Y+2XtpBFZSWYvdh5x4jVXc0+p2GCNp0VgJ4571NuOeeoqorj42OKYiDee8Q1fue7L/5JX7SmgbXCuOlIcF7I8gzvPIdHRz3K07WUuW4ecBYmN2UgBBm8GAlqhyungyqYTwGHu3QZCTVh/ylk9Drcy94O+cWkoQtc+AOQXTPtKR+YLA5qFJ2nyq5BoWgiPArFNeTi6xMTS3lSoUKuv4ns5b9M9F9O3L+FSITdy2hdo1qZX9s7qJ2VVAZaT97KmpzlJFr90A/47+/vpyruWQvc814rBhStvDzZuSDi7EylQSEaAsfHk+7ZuIKtd+l4XZbCUt+jz4Vykqqj52g1t3zhC9vo/AD2bsKl74BH/wOSXbAkcTxCQIYvhM3Xw+KGAXc0svqYzlvyn8tTvk5ubLY8gJ2vRYb343pnGYnzSAwwfhn+Zf8Zd/9bYLEJR48hbpIOrx5a8TR/Adl6VVrG9QA4i0V34lRbIhMRDg4OABgOh9IqVqsm6hltdyNpqLUnt7s9ah1QnPNk3jMcjWSxmDOdTZNy1ChLnQZ3+qVrBtQpWgC69TvRqkSlNIAwhhzCrY+isyvworfhH36L1cxsj6TpTfzyt1JNSiTWyMYFM3pxdl6E5EZlwxHEmjATuPJtPUc+nfKT2DU4uOc74NF3oJf/Brq4Bkc3bMtJ+SwMX4oMH4A18vdcsre1LIwjOuc4Pj6mLEvG47Ekn0Rbkb9dNVlet9V+Xb9xAGKnXGnzr9XkpT07PssyBoOBTI4nNMXEdSnesdTTqu/r5DOtnmeJZ7L1KtQ/BNVtdHYLd/wUHA7h0vchL38HXHoDdt5Q8iZJ04izUOP2a/AX/hDxeA+GWxaai2oyMyZqHm6i0xu4i98A269O5YvcyUE1/qBYo/k15P6/hvu834T7/wXqv4pwVMDW7zGFtFnAfivnFF/Nj3OO2WzOZDJhNBq1wO2Q7q7Ntf1aTlai3PUJXtJ5uXrPhRAIIVgwoix198IFijxfwlZp8XFlMmcoWmY22Ubo+InvpH76rbjtL8Jf/ka48iakuGrPrZ7511dUNJoZNP8kfPBLkO2cGILtWhxuwOTY3i0UPZgiL3sXjB5CNK4AeHlcNqcEBpd167z4FOq3we90Zp8sv9typubvfl5V27LdK8uS/f07DAZDaW3eBsAreTzSrpk5Qxrbuv0+hOQqPAPLmkH3TDJijIQQ2kMRQ6h1d/dCmw1yt6uFx1oN0r7U8imYfRK386Upf7gHWEl+n5Uts53hFlDxxGd/lPDEt5FfeYHty81H6PQYGW2iz30cHvwh3H1/+iTCnGcGGsxWb3YlrJn3Wci8eklyZuzv3yHPcxkMhi23fL6J8S2gT63LkSYhabvoqmtFsTTbEAOhDpTlgroOuru7m4DcW/nP9EpOcxMRddJOz9+m1RHJiB/7ZtzhP0cuPJrqXSi6/2kYfz3u834CbXcVn6/tkzipjVw745mzrw64+2RZJsPhEJ+Zadrc7xk152+3D+COC6+PbHSjTxTWADkEYozM53Pqutbd3V3yxgEgvfbWzFq65tb3I8ppWundr0TPuiB+4HVI/ZvI7r3Utx4jxFdQfOEvgd9sqew8C/iZLPLadnphvQa4d+40lGuHk/nMm0l0Wocn0i5PXj0zqe/suMsUkk7fhBR9ljWeLnzm5c7+PmVZpvMDtGuvPxZd+pXurUJfloZ4lgvwlIEm2TSCl/44dXyIePMTaHwx+ct/yo7aS5ymFyhbHeJdv1u6f5YptPygfZdSb/b29siyrAOu9zZ6ZUl+LzmizsG278Kie4NZURKWMFmtWk0INSHYEXlVVen29nZ7TE9/2+Zy0+eXUee6WlOvX2PDSj7p4gn0E2/Gfc73IuNHjIXr8/PGpUGfWI/zXv11E7HY7sHBAYPBYBm47iRwT+Sj36VfoQ/g/gsrGl4fJGsnpE0ZhI5dl2XJYlGyuTHW8cZG++76qZ7+7dKORvvi7EXtsftGNJj2GS082T53to6wtmjpqaNeZrldGx1jWqpclLjf4eEh0+lEhsMRq9ryXZGm5TjaHhl0YkysUHCnwq+fe6N60594i45N2aHOhGqOOy2KQre2t9KZPp3n5a5y70Rf2os4nTK+psGVOdjixh7ynr6A64B11rVaXqELwqT7K23HGDnY32dRljIajSiK4vkBt+uZzhhdOzAkhrC8gCdKBPQUrt7g+42sYnlDyZ0ZNQfQ7e0d2w7TBqSXyyyc+zqF25x2rQXYOd5bffZ5j1NYPhW9tXH3EZCR7SVKHiqXkh3XA+xs5W75bh+xlgB8Lg1xaXHTSwnwHYVb0l3DrkMIlIs5dR0Yb4x1Y7x5Uh6fZ/Vambry+7fxWmXNn6nW3CeMBsGOj4+ZHE8kL/LmEOdlJ8b5BpjMx9S+9CyRdY+2xc+eJ1s6tfOe1yHGSFQrzRRCoCwrynKB9143N7fa3Yt3A+7aRW64wG8zgK3DNZzqbld/4RsWnSqwLRYLjg4PCSHIcDQiz3M633LnQz8XDJqxnRO5z6dFn/Zyn32vyMtOqVBUIyFEQl1TJy07hJrhcKSbm5upbNNpdvL6PCU9zwQbQj/nfE5V3s67mL1xiVhZo6OjI+azmeRFYYdv+wznnUWFnkfg/jPlVssU3BSyPO/LrSnSfO5gtGRVJ+UrxkAIkRgCVV1TLhYosLGxoePxeNn4X+dsOQcbX6fYPN+rVQDPydW6eUvLuSaTCdPpVESE4WDY7EAw54V08tbG2piRz49znGeubQmHviLQpWrS8fj2vjXdeKnaq2VRy9S17GiPyb0ZiaFh2yV1XeGcZzwe63A47M6iX0fVJ+y29N0pwvI0c+f5Xl03fa7Vja3RjqfTKdPpVKJGBsWAPG80ZLekJa+D5fNRBlefPUkQtnbLAD6NDaSJ3N20WYaGrNyxLprC3KGl6ro2kyrUNc45BsOhpmJe7TunX91oTmPdzeJ/RvJ63WR7bBisPuRsNmM2nUqIkSLPyZPpY+y4k7V3y7js3Je03jVZRfJ2HPb9WYhxqgxeDvWdNC5PzHvFdGnt1d5iNBSpaXRNXZAQglF0DNR1RV3VKFAUBaPRSNN59O2kVhx2vdmuH895rYPmGZcOaVqeH+1i2uO2dXM2m8lisUCAvMjJsryNmTcUe3b+VMsbbZ1W++UUcXXO6/kpWacoLXd1o60zrdLVFNA0qo5LYci6toOmvXPkgwGDotBmq2S/7zXD7LpY6W+Vo6/bTdC/+vOKMVJXNfPFXMrFgjoVHsuzDJ/nbXKicz4dXC13z59STYXt1o9hFTk7woFT0bYvOtZFk/qdnwaY395L23MUuvMV7LeGQJ0AHmNs90vlRU7mM82y7MQiGsKdX185TUY3yFZVlZRlSVVVxBDaNOLO3LEE9CYh7rwZj2uWoaew3p1qz6MEnk3Bz0M1X++LfX6O+CbLP8aOfTd+6NY7lgAde+5An2Vk6cd7r005v+ejWPW8b9Jwj1DXhLQ+/VSlPut1zmpAO7m7jD3rWrVIzv3Omf4t4f8DnS7flTGvxNMAAAAASUVORK5CYII=") center/contain no-repeat !important; }
.lc-heart:hover{ transform:scale(1.1); }

/* SPACES Phase 3 - More filters modal */
.mf-overlay{ position:fixed; inset:0; background:rgba(17,24,39,.45); z-index:1300; display:none; align-items:flex-start; justify-content:center; padding:40px 16px; overflow:auto; }
.mf-overlay.open{ display:flex; }
.mf-modal{ background:#fff; border-radius:16px; width:min(680px,100%); box-shadow:var(--card-hover); overflow:hidden; }
.mf-head{ display:flex; align-items:center; justify-content:center; position:relative; padding:16px; border-bottom:1px solid var(--border); }
.mf-head h3{ margin:0; font-family:'DM Serif Display',serif; font-size:1.3rem; color:var(--text); }
.mf-head .mf-x{ position:absolute; right:14px; top:50%; transform:translateY(-50%); border:0; background:none; font-size:1.3rem; color:var(--muted); cursor:pointer; }
.mf-body{ padding:18px 22px; max-height:60vh; overflow:auto; }
.mf-body .m-h{ font-weight:800; color:var(--text); margin:18px 0 11px; font-size:1rem; }
.mf-body .m-h:first-child{ margin-top:0; }
.mf-cards{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.mf-cards.mf-c2{ grid-template-columns:repeat(2,1fr); }
.mf-card{ border:1px solid var(--border); border-radius:11px; padding:13px 8px; display:flex; flex-direction:column; align-items:center; gap:7px; font-weight:700; font-size:.83rem; color:var(--text); background:#fff; text-align:center; cursor:pointer; font-family:'DM Sans',sans-serif; }
.mf-card svg{ color:#374151; }
.mf-card.on{ border-color:var(--accent); background:var(--brand-light); color:#d97d00; }
.mf-card.on svg{ color:#d97d00; }
.mf-chips{ display:flex; flex-wrap:wrap; gap:9px; }
.mf-chip{ border:1px solid var(--border); background:#fff; border-radius:999px; padding:8px 14px; font-weight:600; font-size:.85rem; color:var(--text); cursor:pointer; font-family:'DM Sans',sans-serif; }
.mf-chip.on{ border-color:var(--accent); background:var(--brand-light); color:#d97d00; }
.mf-foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 22px; border-top:1px solid var(--border); }
.mf-reset{ background:none; border:0; color:var(--accent); font-weight:700; cursor:pointer; }
@media (max-width:640px){ .mf-cards{ grid-template-columns:repeat(2,1fr); } }

/* Phase 3 tweaks: smaller cards + clean outline selection (no fill) */
.mf-card{ padding:10px 8px; gap:6px; font-size:.8rem; }
.mf-card svg{ width:20px; height:20px; }
.mf-card.on{ background:#fff; border-color:var(--accent); color:#d97d00; box-shadow:inset 0 0 0 1px var(--accent); }
.mf-card.on svg{ color:#d97d00; }
.mf-chip.on{ background:#fff; border-color:var(--accent); color:#d97d00; box-shadow:inset 0 0 0 1px var(--accent); }

/* SPACES — Header profile dropdown */
.profile{ position:relative; }
.profile-pill{
  display:flex; align-items:center; gap:.55rem;
  background:var(--white); border:1px solid var(--border);
  border-radius:999px; padding:.3rem .7rem .3rem .35rem; cursor:pointer;
  font-family:'DM Sans',sans-serif; transition:border-color .15s, box-shadow .15s;
}
.profile-pill:hover{ border-color:var(--brand); box-shadow:0 1px 6px rgba(0,0,0,.08); }
.profile-avatar{
  width:34px; height:34px; flex:0 0 34px; border-radius:50%;
  background:var(--brand); color:#fff; font-weight:700; font-size:.95rem;
  display:flex; align-items:center; justify-content:center; letter-spacing:.02em;
}
.profile-meta{ display:flex; flex-direction:column; line-height:1.15; text-align:left; }
.profile-name{ font-size:.86rem; font-weight:600; color:var(--text); }
.profile-role{ font-size:.72rem; color:var(--muted); }
.profile-caret{ font-size:.7rem; color:var(--muted); margin-left:.1rem; transition:transform .15s; }
.profile.open .profile-caret{ transform:rotate(180deg); }

.profile-menu{
  position:absolute; top:calc(100% + 10px); right:0; width:270px;
  background:var(--white); border:1px solid var(--border); border-radius:14px;
  box-shadow:0 12px 40px rgba(0,0,0,.16); padding:.5rem; z-index:1400;
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:opacity .15s, transform .15s, visibility .15s;
}
.profile.open .profile-menu{ opacity:1; visibility:visible; transform:translateY(0); }

.profile-card-head{ display:flex; align-items:center; gap:.7rem; padding:.7rem .6rem .8rem; }
.profile-avatar-lg{ width:44px; height:44px; flex:0 0 44px; font-size:1.15rem; }
.profile-card-id{ min-width:0; }
.profile-card-name{ font-size:.95rem; font-weight:700; color:var(--text); }
.profile-card-email{ font-size:.78rem; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.profile-role-row{
  display:flex; align-items:center; gap:.5rem; margin:0 .35rem .35rem;
  padding:.5rem .55rem; background:var(--brand-light); border-radius:9px;
  font-size:.82rem; font-weight:600; color:#d97d00;
}
.profile-role-row svg{ color:#d97d00; flex:0 0 auto; }

.profile-divider{ height:1px; background:var(--border); margin:.35rem .35rem; }

.profile-item{
  display:flex; align-items:center; gap:.6rem;
  padding:.6rem .6rem; border-radius:9px; text-decoration:none;
  font-size:.88rem; font-weight:600; color:var(--text); transition:background .12s;
}
.profile-item svg{ color:var(--muted); flex:0 0 auto; }
.profile-item:hover{ background:var(--brand-light); color:#d97d00; }
.profile-item:hover svg{ color:#d97d00; }

.profile-logout-form{ margin:0; }
.profile-logout{
  width:100%; display:flex; align-items:center; gap:.6rem;
  padding:.6rem .6rem; border:0; border-radius:9px; background:none; cursor:pointer;
  font-family:'DM Sans',sans-serif; font-size:.88rem; font-weight:600; color:#dc2626;
  transition:background .12s;
}
.profile-logout svg{ color:#dc2626; flex:0 0 auto; }
.profile-logout:hover{ background:#fef2f2; }

.nav-signin{ font-size:.875rem; color:var(--muted); text-decoration:none; font-weight:500; }
.nav-signin:hover{ color:var(--brand); }

@media (max-width:640px){
  .profile-meta{ display:none; }
  .profile-pill{ padding:.25rem; }
  .profile-menu{ width:250px; }
}

/* SPACES — admin "Geocode all" progress panel */
.geo-panel{ background:#fff; border:1px solid var(--border); border-left:4px solid var(--brand); border-radius:12px; padding:14px 16px; margin:0 0 14px; box-shadow:0 2px 10px rgba(0,0,0,.05); }
.geo-panel-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.geo-panel-row strong{ font-size:.95rem; color:var(--text); }
.geo-stop{ border:1px solid var(--border); background:#fff; border-radius:8px; padding:5px 14px; font-weight:600; font-size:.82rem; color:#dc2626; cursor:pointer; font-family:'DM Sans',sans-serif; }
.geo-stop:hover{ background:#fef2f2; border-color:#dc2626; }
.geo-bar{ height:8px; background:var(--brand-light); border-radius:99px; overflow:hidden; }
.geo-bar-fill{ height:100%; width:0; background:var(--brand); border-radius:99px; transition:width .2s; }
.geo-status{ font-size:.85rem; color:var(--text); margin-top:8px; font-weight:500; }
.geo-hint{ font-size:.78rem; color:var(--muted); margin-top:6px; line-height:1.5; }
.geo-hint code{ background:var(--bg); padding:1px 5px; border-radius:4px; font-size:.9em; }

/* SPACES — admin buildings Excel import */
.imp-drop{ display:block; border:2px dashed var(--border); border-radius:14px; padding:34px 20px; text-align:center; cursor:pointer; transition:border-color .15s, background .15s; }
.imp-drop:hover{ border-color:var(--brand); background:var(--brand-light); }
.imp-drop input[type=file]{ display:none; }
.imp-drop-inner{ display:flex; flex-direction:column; align-items:center; gap:6px; }
.imp-ic{ font-size:2rem; color:var(--brand); }
.imp-drop-inner span:nth-child(2){ font-weight:700; color:var(--text); }
.imp-drop-inner small{ color:var(--muted); font-size:.82rem; max-width:440px; }
.imp-stats{ display:flex; gap:14px; flex-wrap:wrap; margin:6px 0 10px; }
.imp-stat{ flex:1 1 150px; border:1px solid var(--border); border-radius:12px; padding:14px 16px; background:#fff; }
.imp-stat-new{ border-color:var(--brand); background:var(--brand-light); }
.imp-stat-dup{ background:var(--bg); }
.imp-num{ display:block; font-size:1.5rem; font-weight:800; color:var(--text); font-family:'DM Sans',sans-serif; }
.imp-stat-new .imp-num{ color:#d97d00; }
.imp-lbl{ font-size:.8rem; color:var(--muted); }

/* SPACES — draggable list/map divider (finder + admin buildings) */
.sp-resizer{ flex:0 0 12px; align-self:stretch; cursor:col-resize; position:relative; z-index:6; touch-action:none; }
.sp-resizer::before{ content:''; position:absolute; top:0; bottom:0; left:5px; width:2px; background:var(--border); border-radius:2px; transition:background .15s, width .15s, left .15s; }
.sp-resizer::after{ content:''; position:absolute; top:50%; left:50%; width:5px; height:38px; transform:translate(-50%,-50%); border-radius:3px; background:var(--border); box-shadow:0 0 0 3px #fff; transition:background .15s; }
.sp-resizer:hover::before, .sp-resizer.dragging::before{ background:var(--brand); width:3px; left:4px; }
.sp-resizer:hover::after, .sp-resizer.dragging::after{ background:var(--brand); }
body.sp-resizing{ cursor:col-resize !important; user-select:none; }
body.sp-resizing iframe{ pointer-events:none; }               /* don't let the map iframe swallow the drag */
body.sp-resizing .leaflet-container{ pointer-events:none; }
/* Finder: divider only in Split view; hidden where a pane is hidden */
.np-split .sp-resizer{ display:none; }
.np-split[data-layout="split"] .sp-resizer{ display:block; }
/* Stacked layouts (mobile): no horizontal divider */
@media (max-width:900px){ .sp-resizer{ display:none !important; } .np-split[data-layout="split"] .sp-resizer{ display:none !important; } }

/* SPACES — admin States & Areas editor */
.ar-addgrid{ grid-template-columns:repeat(4,1fr); }
.ar-preview{ display:inline-flex; align-items:center; min-height:38px; padding:6px 12px; background:var(--brand-light); border:1px solid var(--brand); border-radius:8px; color:#d97d00; font-weight:700; font-size:.9rem; }
.ar-tag{ display:inline-block; background:var(--bg); border:1px solid var(--border); border-radius:6px; padding:2px 9px; font-size:.82rem; color:var(--text); }
.ar-in{ width:100%; border:1px solid var(--brand); border-radius:6px; padding:6px 8px; font-family:'DM Sans',sans-serif; font-size:.85rem; color:var(--text); outline:none; }
.ar-in:focus{ box-shadow:0 0 0 2px var(--brand-light); }
tr.ar-editing td{ background:var(--brand-light); }
@media (max-width:760px){ .ar-addgrid{ grid-template-columns:1fr 1fr; } }

/* SPACES — admin buildings coordinate column */
.bld-coord{ display:flex; flex-direction:column; gap:3px; align-items:flex-start; }
.coord-num{ font-variant-numeric:tabular-nums; font-size:.8rem; color:var(--text); white-space:nowrap; }
.gs-badge{ display:inline-block; font-size:.66rem; font-weight:700; padding:1px 7px; border-radius:99px; text-transform:uppercase; letter-spacing:.02em; }
.gs-approx{ background:#fef3e0; color:#c26a00; }
.gs-auto{ background:#e7f5ec; color:#137a3a; }
.gs-manual{ background:#e8eefc; color:#2a52be; }
.gs-nf{ background:#fdecec; color:#c0392b; }

/* SPACES — admin buildings: column chooser + map locate-by */
.bld-cc-wrap{ position:relative; display:inline-block; }
.bld-cc{ display:none; position:absolute; top:calc(100% + 6px); right:0; z-index:70; width:200px;
  background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:0 8px 28px rgba(0,0,0,.16); padding:.5rem; }
.bld-cc.open{ display:block; }
.bld-cc .cc-h{ font-size:.72rem; text-transform:uppercase; letter-spacing:.04em; color:var(--muted); font-weight:700; margin:.15rem .35rem .5rem; }
.cc-opt{ display:flex; align-items:center; gap:.5rem; padding:.35rem .35rem; border-radius:7px; font-size:.85rem; color:var(--text); cursor:pointer; }
.cc-opt:hover{ background:var(--brand-light); }
.cc-opt input{ accent-color:var(--brand); width:15px; height:15px; }
.bld-map-bar{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:8px; }
.bld-map-mode{ display:inline-flex; align-items:center; gap:6px; font-size:.78rem; color:var(--muted); white-space:nowrap; }
.bld-map-mode select{ border:1px solid var(--border); border-radius:7px; padding:4px 8px; font-family:'DM Sans',sans-serif; font-size:.8rem; color:var(--text); background:#fff; cursor:pointer; }

/* SPACES — admin buildings inline-edit grid */
.bld-leaflet{ width:100%; height:520px; border-radius:12px; overflow:hidden; border:1px solid var(--border); }
.bld-map-hint{ font-size:.76rem; color:var(--muted); margin-top:8px; line-height:1.5; }
.bld-map-head .mh-note{ font-size:.72rem; color:var(--muted); font-weight:400; }
/* editable cells */
.bld-table td .ge{ width:100%; min-width:70px; border:1px solid transparent; border-radius:6px; padding:4px 6px;
  font-family:'DM Sans',sans-serif; font-size:.82rem; color:var(--text); background:transparent; outline:none; }
.bld-table td .ge:hover{ border-color:var(--border); background:#fff; }
.bld-table td .ge:focus{ border-color:var(--brand); background:#fff; box-shadow:0 0 0 2px var(--brand-light); }
.bld-table td select.ge{ cursor:pointer; }
.coord-edit{ display:flex; flex-direction:column; gap:3px; align-items:stretch; }
.coord-edit .coord-in{ width:100%; font-variant-numeric:tabular-nums; font-size:.78rem; }
/* dirty state */
.bld-row .dirty-dot{ display:none; width:8px; height:8px; border-radius:50%; background:var(--brand); margin-right:5px; vertical-align:middle; }
.bld-row.dirty .dirty-dot{ display:inline-block; }
.bld-row.dirty > td{ background:#fff8ec; }
.bld-row.dirty{ box-shadow:inset 3px 0 0 var(--brand); }
.bld-row.selected > td{ background:var(--brand-light); }
.bld-row.dirty.selected > td{ background:#fdeecd; }
/* per-row Save / Revert (only visible when the row is dirty) */
.bld-save, .bld-revert{ display:none; border:0; border-radius:7px; padding:4px 10px; font-weight:700; font-size:.78rem; cursor:pointer; font-family:'DM Sans',sans-serif; }
.bld-save{ background:var(--brand); color:#fff; }
.bld-save:hover{ background:#d97d00; }
.bld-revert{ background:#fff; border:1px solid var(--border); color:var(--muted); }
.bld-revert:hover{ border-color:#dc2626; color:#dc2626; }
.bld-row.dirty .bld-save, .bld-row.dirty .bld-revert{ display:inline-block; }
.bld-actions{ white-space:nowrap; }

/* SPACES — buildings grid: keep the wide table scrolling INSIDE its pane
   (so the map stays visible) + compact rows so more columns fit */
.bld-left{ min-width:0; overflow:hidden; }                 /* confine the table to its pane */
.bld-table-wrap{ overflow:auto; max-width:100%; }
.bld-table.bld-grid td, .bld-table.bld-grid th{ padding:.28rem .4rem; vertical-align:middle; white-space:nowrap; }
.bld-table.bld-grid td .ge{ min-width:56px; padding:3px 5px; font-size:.8rem; }
.bld-table.bld-grid .c-no{ text-align:right; color:var(--muted); }
/* coordinates: lat + lng side by side, badge inline — short rows */
.bld-table.bld-grid .coord-edit{ flex-direction:row; align-items:center; gap:4px; flex-wrap:nowrap; }
.bld-table.bld-grid .coord-edit .coord-in{ width:66px; min-width:66px; }
.bld-table.bld-grid .coord-edit .gs-badge{ flex:0 0 auto; }
/* per-column sensible min widths so text isn't clipped to 3 letters */
.bld-table.bld-grid td[data-c="name"] .ge{ min-width:150px; }
.bld-table.bld-grid td[data-c="address"] .ge{ min-width:150px; }
.bld-table.bld-grid td[data-c="type"] .ge,
.bld-table.bld-grid td[data-c="property_type_raw"] .ge,
.bld-table.bld-grid td[data-c="state"] .ge,
.bld-table.bld-grid td[data-c="area"] .ge,
.bld-table.bld-grid td[data-c="district"] .ge,
.bld-table.bld-grid td[data-c="mukim"] .ge{ min-width:100px; }
.bld-ghost.is-active{ border-color:var(--brand); background:var(--brand-light); color:#d97d00; font-weight:700; }

/* SPACES — admin buildings import column mapping */
.map-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:10px 16px; }
.map-row{ display:flex; flex-direction:column; gap:4px; }
.map-lbl{ font-size:.8rem; font-weight:600; color:var(--text); }
.map-sel{ border:1px solid var(--border); border-radius:8px; padding:7px 9px; font-family:'DM Sans',sans-serif; font-size:.85rem; color:var(--text); background:#fff; cursor:pointer; }
.map-sel:focus{ border-color:var(--brand); outline:none; box-shadow:0 0 0 2px var(--brand-light); }
#mapSample th, #mapSample td{ white-space:nowrap; font-size:.8rem; }

/* SPACES — import group-by choice */
.map-groupby{ margin-top:16px; display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; padding:12px 14px; background:var(--bg); border:1px solid var(--border); border-radius:10px; }
.mg-opt{ display:inline-flex; align-items:center; gap:6px; font-size:.85rem; color:var(--text); cursor:pointer; }
.mg-opt input{ accent-color:var(--brand); }
.mg-opt small{ color:var(--muted); }
