@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap");
:root {
  font-family: "DM Sans", sans-serif;
  color: #e9efeb;
  --ink: #172d32;
  --yellow: #ffdf65;
  --line: #ffffff24;
  --panel: #172d32f2;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: #dce5de;
  overflow: hidden;
}
button,
input,
a {
  -webkit-tap-highlight-color: transparent;
}
button,
input {
  font: inherit;
}
button {
  cursor: pointer;
}
button:focus-visible,
a:focus-visible,
input:focus-visible {
  outline: 3px solid var(--yellow);
  outline-offset: 3px;
}
button {
  border: 1px solid var(--line);
  color: inherit;
  background: transparent;
  border-radius: 8px;
  min-height: 42px;
  padding: 8px 14px;
}
button:hover {
  background: #ffffff14;
}
a {
  color: inherit;
}
#map {
  position: fixed;
  inset: 0;
}
.cesium-viewer-bottom {
  left: 14px !important;
  bottom: 4px !important;
  max-width: 95%;
  font-size: 10px;
}
header {
  position: absolute;
  top: 24px;
  left: 28px;
  right: 28px;
  display: flex;
  gap: 16px;
  align-items: center;
  pointer-events: none;
}
header > * {
  pointer-events: auto;
}
.brand {
  background: var(--panel);
  padding: 17px 23px;
  text-decoration: none;
  border-radius: 12px;
  font:
    800 23px Manrope,
    sans-serif;
  letter-spacing: 1px;
  box-shadow: 0 8px 30px #122b3222;
}
.brand span {
  color: var(--yellow);
  font-size: 16px;
  vertical-align: top;
  margin-left: 4px;
}
.brand small {
  font: 500 10px "DM Sans";
  letter-spacing: 3px;
  display: block;
  margin-top: 3px;
}
.search-wrap {
  width: min(450px, 42vw);
  position: relative;
  margin-left: auto;
}
#search {
  display: flex;
  border: 1px solid #ffffff38;
  border-radius: 12px;
  background: var(--panel);
  padding: 7px;
}
#query {
  border: 0;
  background: transparent;
  color: #fff;
  padding: 8px 12px;
  min-width: 0;
  flex: 1;
  font-size: 15px;
}
#query::placeholder {
  color: #b8c7c8;
}
#search button {
  border: 0;
  color: var(--yellow);
  font-size: 28px;
  padding: 0 14px;
}
#results {
  background: var(--panel);
  border-radius: 12px;
  margin-top: 8px;
  padding: 8px;
  max-height: 40vh;
  overflow: auto;
}
#results button {
  display: block;
  width: 100%;
  text-align: left;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  font-size: 13px;
  padding: 12px;
}
.square {
  background: var(--panel);
  font-size: 25px;
  width: 54px;
  height: 58px;
}
.intro {
  position: absolute;
  top: 133px;
  left: 32px;
  color: var(--ink);
  text-shadow: 0 1px 12px #ffffffe0;
  pointer-events: none;
}
.eyebrow {
  font-size: 10px;
  letter-spacing: 2px;
  font-weight: 700;
}
h1 {
  font:
    600 clamp(25px, 2.7vw, 43px) / 1.13 Manrope,
    sans-serif;
  letter-spacing: -1.8px;
  margin: 12px 0;
}
.intro p {
  font-size: 14px;
  font-weight: 600;
}
#solar {
  position: absolute;
  top: 115px;
  right: 28px;
  width: 350px;
  background: var(--panel);
  border: 1px solid #ffffff22;
  border-radius: 16px;
  padding: 21px;
  box-shadow: 0 14px 45px #132c3230;
}
h2 {
  font:
    700 16px Manrope,
    sans-serif;
  margin: 0;
}
.panel-head {
  display: flex;
  gap: 12px;
  align-items: center;
}
.panel-head > div {
  flex: 1;
}
.panel-head button {
  border: 0;
  padding: 0;
  min-width: 24px;
}
.sun-icon {
  font-size: 30px;
  color: var(--yellow);
}
#zone {
  font-size: 10px;
  color: #a4babb;
  display: block;
  margin-top: 5px;
}
.time-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 23px 0 16px;
}
#time {
  font:
    600 42px Manrope,
    sans-serif;
  letter-spacing: -2px;
}
#date {
  background: #ffffff0c;
  color: #e6edeb;
  border: 1px solid var(--line);
  padding: 8px;
  border-radius: 7px;
  font-size: 12px;
  width: 135px;
  color-scheme: dark;
}
#hour {
  width: 100%;
  accent-color: var(--yellow);
  cursor: ew-resize;
}
.range-label {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  color: #a4babb;
  margin-top: 5px;
}
#altitude {
  color: var(--yellow);
}
.sun-events {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 20px 0 12px;
}
.sun-events button {
  text-align: left;
  background: #ffffff07;
  padding: 12px;
}
.sun-events span {
  display: block;
  font-size: 11px;
  color: #b5c5c3;
}
.sun-events strong {
  display: block;
  font: 600 24px Manrope;
  margin-top: 5px;
  color: var(--yellow);
}
.actions {
  display: flex;
  gap: 8px;
}
.actions button:first-child {
  flex: 1;
  background: var(--yellow);
  color: var(--ink);
  font-weight: 700;
  border: 0;
  font-size: 12px;
}
.actions button:last-child {
  font-size: 12px;
}
#daylight {
  font-size: 12px;
  margin: 16px 0 8px;
}
.hint,
#options p {
  font-size: 11px;
  color: #a5b9b8;
  line-height: 1.6;
  margin: 0;
}
#options {
  position: absolute;
  right: 395px;
  top: 115px;
  width: 240px;
  background: var(--panel);
  padding: 20px;
  border-radius: 14px;
  border: 1px solid var(--line);
}
#options label {
  display: flex;
  gap: 12px;
  font-size: 13px;
  margin: 20px 0;
}
#options input {
  accent-color: var(--yellow);
}
#options button {
  width: 100%;
  margin-top: 16px;
}
#options a {
  font-size: 11px;
  display: block;
  margin-top: 16px;
}
.map-tools {
  position: absolute;
  bottom: 69px;
  right: 28px;
  display: flex;
  gap: 6px;
  background: var(--panel);
  padding: 7px;
  border-radius: 12px;
}
.map-tools button {
  min-width: 42px;
  font-weight: 700;
  border: 0;
  font-size: 17px;
}
footer {
  position: absolute;
  bottom: 33px;
  left: 28px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  pointer-events: none;
}
.status {
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 30px;
  background: var(--panel);
  padding: 11px 15px;
  font-size: 12px;
  max-width: 70vw;
}
.status i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--yellow);
}
#quality {
  font-size: 10px;
  color: var(--ink);
  background: #f5f7f3dc;
  border-radius: 10px;
  padding: 5px 10px;
  align-self: flex-start;
}
#toast {
  position: absolute;
  bottom: 145px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--panel);
  padding: 14px 22px;
  border-radius: 12px;
  max-width: 85vw;
  font-size: 13px;
}
#error {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--panel);
  padding: 26px;
  border-radius: 15px;
  width: min(400px, 90vw);
}
#error p {
  font-size: 14px;
  line-height: 1.6;
}
.sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
[hidden] {
  display: none !important;
}
@media (max-width: 700px) {
  header {
    top: 12px;
    left: 12px;
    right: 12px;
    gap: 8px;
  }
  .brand {
    font-size: 17px;
    padding: 12px;
  }
  .brand small {
    font-size: 8px;
  }
  .brand span {
    font-size: 10px;
  }
  .search-wrap {
    width: auto;
    flex: 1;
  }
  #query {
    font-size: 12px;
    padding: 6px;
    width: 100px;
  }
  .square {
    width: 42px;
    height: 48px;
  }
  .intro {
    top: 91px;
    left: 16px;
  }
  .intro h1 {
    font-size: 25px;
  }
  .eyebrow {
    font-size: 8px;
  }
  #solar {
    top: auto;
    bottom: 118px;
    right: 12px;
    width: 290px;
    padding: 15px;
  }
  .time-row {
    margin: 10px 0;
  }
  .sun-events {
    margin: 10px 0;
  }
  .sun-events button {
    padding: 8px;
  }
  #time {
    font-size: 33px;
  }
  .hint {
    display: none;
  }
  .sun-events strong {
    font-size: 20px;
  }
  .panel-head h2 {
    font-size: 14px;
  }
  #daylight {
    margin: 10px 0 0;
  }
  #options {
    right: 12px;
    top: 78px;
    z-index: 3;
  }
  .map-tools {
    right: 12px;
    bottom: 57px;
    padding: 4px;
  }
  footer {
    left: 12px;
    bottom: 30px;
  }
  .status {
    max-width: calc(100vw - 24px);
    font-size: 10px;
    padding: 7px 12px;
  }
  #quality {
    display: none;
  }
  .cesium-viewer-bottom {
    font-size: 8px !important;
  }
  .intro {
    max-width: 200px;
  }
  #toast {
    bottom: 80px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
  }
}
#options {
  max-height: calc(100dvh - 145px);
  overflow: auto;
}
#basemap {
  width: 100%;
  padding: 11px 8px;
  border-radius: 8px;
  background: #294148;
  color: #eef3ef;
  border: 1px solid #ffffff30;
  font: inherit;
  font-size: 12px;
}
#options .basemap-label {
  margin-bottom: 8px;
}
#vegetation-status {
  padding: 8px 0;
  border-bottom: 1px solid #ffffff24;
}
/* Property-first portal */
:root{--ink:#17324e;--panel:#17324ef5;--sidebar:310px;--shelf:245px;color:#243b5d}
[hidden]{display:none!important}
header{position:fixed;inset:0 0 auto;height:76px;padding:12px 26px;background:white;z-index:12;pointer-events:auto;border-bottom:1px solid #dce5ee}
.brand{color:#22375e;font-family:Manrope,sans-serif;font-weight:800;font-size:27px}.brand small{color:#527da6;background:#edf3fa;padding:9px;font-size:11px}.brand span{color:#6c8db6}
.search-wrap{margin-left:auto;width:min(380px,35vw)}header #search{background:#f1f5f9;color:#243b5d;border:1px solid #dae3ee}header #query{color:#243b5d}header .square{color:#243b5d;background:#edf3fa}
#map{inset:76px 0 var(--shelf) var(--sidebar)}
#one-panel{position:fixed;top:76px;left:0;bottom:0;width:var(--sidebar);padding:26px 22px;background:linear-gradient(160deg,#112b46,#24476a);color:#e9f1fc;display:flex;flex-direction:column;z-index:5}
.one-heading{display:flex;align-items:center;gap:10px}.one-heading h1{font-size:24px;margin:0}.one-star{font-size:30px;color:#acd7fa}#chat-close{margin-left:auto}.one-subtitle{color:#b8cce0;font-size:14px;line-height:1.5}#messages{overflow:auto;flex:1;margin:24px 0;min-height:80px}.message{padding:18px;background:#ffffff09;border:1px solid #ffffff14;border-radius:17px;font-size:15px;line-height:1.65;margin-bottom:14px}.message.user{background:#395a7c}.suggestions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.suggestions button{font-size:12px;min-height:34px;padding:6px 10px}#one-search{display:flex;border:1px solid #819bb66b;border-radius:22px;padding:10px;background:#112a44}#one-query{background:transparent;border:0;color:white;resize:none;width:100%;font:inherit;font-size:14px;padding:8px;outline:none}#one-search button{border:0;font-size:25px;color:#a6d0f1}.one-disclaimer{font-size:11px;line-height:1.5;color:#b1c5d9}
#property-toolbar{position:fixed;top:92px;left:calc(var(--sidebar) + 18px);right:20px;display:flex;gap:8px;z-index:7;align-items:center}#property-toolbar input,#property-toolbar select,#property-toolbar button{border:1px solid #dce4ec;border-radius:24px;background:#fff;color:#233d60;font:inherit;min-height:44px;padding:10px 15px;box-shadow:0 3px 15px #122b4410}#property-query{min-width:120px;flex:1}#max-price{width:140px}#sun-mode{white-space:nowrap}#sun-mode[aria-pressed=true]{background:#ffdf65;border-color:#f4c844}#chat-open{display:none}
#property-shelf{position:fixed;left:var(--sidebar);right:0;bottom:0;height:var(--shelf);background:white;z-index:6;border-top:1px solid #dce4ec}.shelf-heading{height:48px;display:flex;align-items:center;gap:14px;padding:0 20px}.shelf-heading h2{font-size:16px;margin:0;white-space:nowrap}#property-count{color:#8392a8;font-weight:400;padding-left:8px}#catalog-status{font-size:11px;color:#7a899c}#clear-filters{margin-left:auto;font-size:12px;color:#4b6d97;padding:4px 8px;min-height:30px}#property-cards{display:flex;gap:12px;overflow-x:auto;height:calc(100% - 48px);padding:0 16px 12px;scroll-snap-type:x proximity}.property-card{flex:0 0 315px;border:1px solid #dbe4ef;border-radius:13px;overflow:hidden;position:relative;scroll-snap-align:start;background:#f5f8fb}.property-card.selected{border:2px solid #527ca9}.card-select{display:flex;width:100%;height:145px;padding:0;text-align:left;border:0;border-radius:0;color:#243b5d}.card-select:hover{background:#eaf0f7}.card-select img{width:110px;height:145px;object-fit:cover;background:#e0e8ef}.card-info{padding:9px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}.card-info strong{font-size:20px}.card-info span{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-info small{font-size:10px;color:#60748e}.card-info .location-note{font-size:9px;color:#6b7680}.property-card>a{display:block;padding:5px 12px;font-size:11px;text-align:right;color:#3e6893}.empty-catalog{padding:18px}
#solar{top:150px;right:20px;width:350px;max-height:calc(100dvh - var(--shelf) - 170px);overflow:auto;color:#e9efeb;background:var(--panel);z-index:8}#solar .panel-head h2{font-size:16px}#solar .hint{font-size:10px}.season-buttons{display:flex;gap:4px;margin:7px 0 12px}.season-buttons button{font-size:10px;padding:5px;min-height:30px;flex:1}#year-day{width:100%;accent-color:#ffdf65}#year-label{font-size:11px}.map-tools{bottom:calc(var(--shelf) + 35px);right:20px;color:white;z-index:4}footer{left:calc(var(--sidebar) + 14px);bottom:calc(var(--shelf) + 12px);right:90px;color:white;pointer-events:none}#quality{display:none}#options{top:85px;right:20px;max-height:calc(100dvh - var(--shelf) - 100px);overflow:auto;color:white;z-index:10}#toast{z-index:30}#error{left:calc(var(--sidebar) + 5%);right:5%;width:auto;max-width:none;color:#243b5d}body.chat-hidden{--sidebar:0px}body.chat-hidden #one-panel{display:none}body.chat-hidden #chat-open{display:block}
@media(min-width:1500px){:root{--sidebar:345px;--shelf:265px}.property-card{flex-basis:360px}.card-select,.card-select img{height:164px}.card-select img{width:130px}}
@media(max-width:1050px){:root{--sidebar:260px}#max-price{width:105px}#property-toolbar{flex-wrap:wrap}#property-toolbar input,#property-toolbar select,#property-toolbar button{font-size:12px;padding:8px 10px}.search-wrap{width:260px}#solar{top:200px;max-height:calc(100dvh - var(--shelf) - 220px)}}
@media(max-width:750px){:root{--sidebar:0px;--shelf:215px}header{height:62px;padding:10px 14px}.brand{font-size:22px}.brand small,.search-wrap{display:none}header #options-toggle{margin-left:auto}#map{top:62px}#property-toolbar{top:73px;left:10px;right:10px;gap:5px}#property-toolbar input,#property-toolbar select,#property-toolbar button{min-height:36px}#property-query{width:50%;flex:1}#property-toolbar #max-price{width:105px}#chat-open{display:block}#one-panel{top:62px;width:min(345px,100vw);z-index:20;box-shadow:10px 0 40px #0005}body:not(.chat-mobile-open) #one-panel{display:none}#solar{top:163px;bottom:auto;right:10px;width:min(350px,calc(100vw - 20px));max-height:calc(100dvh - 185px);z-index:15}.shelf-heading{padding:0 12px;gap:8px}#catalog-status{display:none}.property-card{flex-basis:285px}.card-select,.card-select img{height:120px}.card-select img{width:95px}.card-info strong{font-size:17px}.map-tools{right:10px;bottom:calc(var(--shelf) + 25px)}footer{left:10px;font-size:10px}#options{top:67px;max-height:75dvh}#error{left:10px;right:10px}}
.brand{background:transparent;box-shadow:none;padding:0;display:flex;align-items:center;gap:8px;letter-spacing:-1px}.brand small{display:inline-block;margin:0 0 0 10px;letter-spacing:1px}.brand span{margin:0}#results{color:white}#toast{color:white;bottom:calc(var(--shelf) + 100px)}#error{transform:none;background:#f4f7fc;border:1px solid #d6e0ed;z-index:9}#solar-location{color:#d1e0f3;font-weight:600}
@media(max-width:750px){.brand small{display:none}.map-tools{gap:0;padding:3px}.map-tools button{min-width:32px;padding:5px}footer .status{max-width:48vw;padding:7px 10px;font-size:10px}#toast{bottom:calc(var(--shelf) + 85px);width:90vw}}
#all-properties{font-size:12px;color:#4b6d97;min-height:30px;padding:4px 8px;white-space:nowrap}
.card-photo{flex:0 0 110px;position:relative;height:145px;background:#e3eaf2;display:flex;align-items:center;justify-content:center}.card-photo span{font-size:11px;color:#6d7f93;padding:12px;text-align:center}.card-photo img{width:100%;height:100%}.card-info{flex:1}
@media(min-width:1500px){.card-photo{flex-basis:130px;height:164px}}@media(max-width:750px){.card-photo{flex-basis:95px;height:120px}}
#map{z-index:0}#map-view-controls{position:fixed;left:calc(var(--sidebar) + 18px);top:146px;display:flex;gap:4px;z-index:7;background:#fff;border:1px solid #dce4ec;border-radius:14px;padding:4px;box-shadow:0 4px 20px #17324e18}#map-view-controls a,#map-view-controls button{font:600 12px 'DM Sans',sans-serif;text-decoration:none;color:#315177;padding:10px 12px;border:0;min-height:34px;border-radius:10px}#map-view-controls a[aria-current=true]{background:#203d60;color:white}#map-view-controls button:hover,#map-view-controls a:hover{background:#e9f0f8;color:#203d60}#search-area{position:fixed;left:calc(var(--sidebar) + 26%);top:202px;z-index:7;color:#224267;background:white;border:1px solid #b5cbe2;border-radius:24px;box-shadow:0 5px 20px #16304825;font-size:13px}#imagery-note{position:fixed;bottom:calc(var(--shelf) + 75px);left:calc(var(--sidebar) + 15px);z-index:5;background:#17324eef;color:white;padding:6px 10px;font-size:11px;border-radius:6px}body.shelf-hidden{--shelf:0px}body.shelf-hidden #property-shelf{display:none}.price-pin{border-radius:24px;background:#17324e;border:2px solid #9bb9d7;color:white;box-shadow:0 3px 9px #142d4440;font:600 12px 'DM Sans',sans-serif;display:flex;align-items:center;justify-content:center;white-space:nowrap}.price-pin:hover{background:#356ca0}.locality-pin{font-size:10px}.leaflet-control-attribution{font-size:9px!important;max-width:85%;line-height:1.4}.leaflet-bottom{z-index:3}#solar{top:194px;max-height:calc(100dvh - var(--shelf) - 210px)}
@media(max-width:1050px){#map-view-controls{top:194px}#search-area{top:241px}#solar{top:238px;max-height:calc(100dvh - var(--shelf) - 254px)}}
@media(max-width:750px){#map-view-controls{top:161px;left:10px;right:auto;gap:0}#map-view-controls a,#map-view-controls button{font-size:10px;padding:8px;min-height:30px}#search-area{top:208px;left:24%;font-size:11px;padding:7px 12px}#solar{top:205px;max-height:calc(100dvh - 225px)}#imagery-note{left:10px;right:10px;font-size:9px;bottom:calc(var(--shelf) + 67px)}}
.map-tools{display:grid;grid-template-columns:repeat(3,42px);gap:3px}.map-tools button{padding:7px;min-width:38px}.map-tools #home{grid-column:1}.navigation-help{font-size:12px;line-height:1.6}body[data-map-mode="2d"] .navigation-help{display:none}body[data-map-mode="2d"] .map-tools{display:flex}
@media(max-width:750px){.map-tools{grid-template-columns:repeat(3,32px);gap:1px}.map-tools button{min-width:30px;min-height:32px;padding:3px;font-size:16px}}
/* Compact search and conversation, with progressive disclosure for map tools. */
:root{--sidebar:330px}
#one-panel{top:84px;left:8px;bottom:8px;width:calc(var(--sidebar) - 16px);border-radius:20px;background:#0c153a;padding:20px 16px 0;box-shadow:none;overflow:hidden}
.one-heading{gap:8px;padding:0 2px}.one-heading h1{font-size:18px;letter-spacing:-.3px}.one-star{width:23px;height:23px;color:#b4d7f4}.one-star svg{width:100%;height:100%}#chat-close{width:28px;min-height:28px;border:0;padding:2px;font-size:18px;color:#b8c6e0}.one-subtitle,.suggestions{display:none}
#messages{margin:28px 0 12px;padding:0 1px;display:flex;flex-direction:column;gap:12px}.message{background:#222c50;border:0;padding:16px;border-radius:17px 17px 17px 5px;font-size:14px;line-height:1.6;margin:0;color:#f2f4fc;flex-shrink:0}.message p{margin:0 0 12px}.message p:last-child{margin:0}.message-author{display:block;font-size:11px;color:#b2bedf;margin:0 0 9px}.message.user{align-self:flex-end;max-width:90%;background:#d0daf0;color:#17233b;border-radius:17px 17px 5px 17px;padding:12px 15px}.one-composer{margin:0 -16px;background:#222c50;border-radius:20px 20px 0 0;padding:15px 14px 12px;flex-shrink:0}#one-search{border:0;border-radius:26px;padding:5px 8px 5px 12px;background:#394366;align-items:center;min-height:48px}#one-query{font-size:13px;padding:9px 0;line-height:20px;max-height:96px;color:#fff}#one-query::placeholder{color:#c0c9df}#one-search button{display:grid;place-items:center;width:32px;min-height:32px;padding:5px;color:#bdc8e5}#one-search svg{width:21px;height:21px}.one-disclaimer{font-size:10px;line-height:1.5;text-align:center;margin:10px 7px 0;color:#a8b5d3}
#property-toolbar{left:calc(var(--sidebar) + 16px);top:92px;right:72px;gap:7px;flex-wrap:nowrap;max-width:920px;align-items:flex-start}#property-toolbar button,#property-toolbar select,#property-toolbar input{box-shadow:none;font-size:13px;min-height:40px;padding:8px 12px}#property-toolbar .property-search{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #d0d6df;border-radius:24px;height:42px;padding:0 8px 0 12px;flex:1 1 245px;max-width:340px;min-width:130px;box-shadow:0 2px 4px #14263812}.property-search>svg{width:18px;height:18px;flex-shrink:0;color:#344965}#property-toolbar #property-query{border:0;border-radius:0;background:transparent;min-width:0;width:100%;height:38px;padding:5px 0;box-shadow:none;flex:1}#property-toolbar #query-clear{border:0;background:transparent;padding:4px;min-height:28px;width:26px;flex-shrink:0;display:grid;place-items:center}#query-clear svg{width:17px;height:17px}#property-toolbar #operation{flex:0 0 114px;border-color:#d0d6df;height:42px}#price-popover{position:relative;flex:0 0 95px;color:#29415e}#price-popover summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;height:42px;padding:0 15px;background:white;border:1px solid #d0d6df;border-radius:24px;font-size:13px}#price-popover summary::-webkit-details-marker{display:none}.price-fields{position:absolute;top:49px;left:0;width:230px;background:#fff;border:1px solid #dae2eb;border-radius:14px;padding:16px;box-shadow:0 10px 30px #14263824;display:grid;gap:12px;z-index:15}.price-fields label{display:grid;gap:5px;font-size:12px}#property-toolbar #max-price,#property-toolbar #currency{width:100%;border-radius:8px;height:38px}.price-fields input{min-width:0}#property-toolbar #refine-search{background:#29476d;color:white;border:0;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:24px;height:42px;white-space:nowrap;flex-shrink:0}#refine-search svg{width:17px;height:17px}#property-toolbar .icon-control,#property-toolbar #chat-open{height:42px;width:42px;min-width:42px;min-height:42px;padding:10px;flex:0 0 42px;border:1px solid #d0d6df;border-radius:50%;display:grid;place-items:center;background:#fff}#property-toolbar #chat-open{display:none}#property-toolbar .icon-control svg,#chat-open svg{width:21px;height:21px}#property-toolbar #sun-mode[aria-pressed=true]{background:#ffe294;border-color:#e5be54}#property-toolbar #layers-toggle[aria-expanded=true]{background:#e8eff8;border-color:#8ca6c5}
#options{top:145px;right:72px;max-height:calc(100dvh - 170px);width:295px;background:#fff;color:#243d5e;border:1px solid #d7e0ea;border-radius:16px;box-shadow:0 8px 30px #14263824;padding:18px;z-index:14}.options-heading{display:flex;align-items:center;justify-content:space-between}.options-heading h2{font-size:15px;margin:0}.options-heading #options-close{padding:5px;width:28px;min-height:28px;border:0;display:grid;place-items:center}.options-heading svg{width:18px;height:18px}#options p{color:#6a7a8e;font-size:11px}#options label{color:#304862;font-size:12px}#options select{color:#304862;background:#f5f7fa;border-color:#dce4ee}#map-view-controls{position:static;display:flex;background:#f0f3f8;box-shadow:none;border:0;margin:15px 0;padding:3px;border-radius:10px}#map-view-controls a{flex:1;text-align:center;font-size:12px;padding:8px}#options #share{color:#34567d;border:1px solid #d7e0ea}#options a{color:#4b6c94}.camera-details{border-top:1px solid #e0e5ec;padding:12px 0;margin-top:8px}.camera-details summary{font-size:12px;cursor:pointer}.camera-controls{display:flex;flex-wrap:wrap;gap:5px;padding:10px 0}.camera-controls button{background:#eef2f7;color:#294365;border:0;min-width:34px;min-height:34px;padding:6px;font-size:13px}
#map-quick-actions{position:fixed;right:15px;top:92px;display:flex;flex-direction:column;gap:5px;z-index:8}#map-quick-actions button{width:40px;height:40px;min-height:40px;display:grid;place-items:center;background:#fff;color:#294365;border:1px solid #ccd5e0;border-radius:11px;font-size:24px;padding:8px;box-shadow:0 2px 4px #1426380d}#map-quick-actions svg{width:20px;height:20px}#map-quick-actions #shelf-toggle{margin-top:6px}#shelf-toggle[aria-expanded=true]{background:#eaf0f8;border-color:#91a9c7}.shelf-heading{padding-right:12px;gap:10px}#shelf-close{margin-left:4px;flex:0 0 30px;min-height:30px;height:30px;padding:6px;display:grid;place-items:center;border:0;border-radius:7px;background:#f0f3f7;color:#263c56}#shelf-close svg{width:18px;height:18px}#catalog-status{font-size:10px}#search-area{top:147px;left:calc(var(--sidebar) + 25%);font-size:11px;padding:7px 14px;min-height:32px}#solar{top:145px;right:72px;max-height:calc(100dvh - 170px);width:330px}footer .status{background:#ffffffd9;color:#50647a;font-size:10px;padding:5px 9px;border-radius:6px}footer .status i{display:none}
body.chat-hidden #property-toolbar #chat-open{display:grid}
@media(min-width:1500px){:root{--sidebar:350px}#one-panel{padding-top:22px}.message{font-size:15px}#property-toolbar{max-width:1000px}}
@media(max-width:1100px){:root{--sidebar:280px}#property-toolbar{gap:5px}#refine-search span{display:none}#property-toolbar #refine-search{width:42px;padding:10px}#property-toolbar #operation{flex-basis:96px}#price-popover{flex-basis:83px}#property-toolbar .property-search{flex-basis:190px}.message{padding:14px;font-size:13px}}
@media(max-width:750px){:root{--sidebar:0px}#one-panel{left:8px;top:70px;bottom:8px;width:min(340px,calc(100vw - 16px));padding-top:20px}#property-toolbar{top:73px;left:10px;right:59px;gap:5px;flex-wrap:wrap;align-items:center}#property-toolbar .property-search{max-width:none;flex:1 1 calc(100% - 50px);min-width:100px;height:38px}#property-toolbar #chat-open{display:grid;flex-basis:36px;width:36px;min-width:36px;height:36px;min-height:36px;padding:8px;order:-1}#property-toolbar #operation{flex:1 1 88px;height:36px;min-height:36px;font-size:11px}#price-popover{flex:0 0 78px}#price-popover summary{height:36px;font-size:11px;padding:0 10px}#property-toolbar .icon-control,#property-toolbar #refine-search{width:34px;height:34px;min-height:34px;min-width:34px;flex:0 0 34px;padding:7px}#property-toolbar .icon-control svg{width:19px;height:19px}#map-quick-actions{top:73px;right:9px}#map-quick-actions button{width:36px;height:36px;min-height:36px;font-size:21px;border-radius:9px}#search-area{top:162px;left:24%;font-size:10px}#options,#solar{right:10px;top:158px;width:min(330px,calc(100vw - 20px));max-height:calc(100dvh - 178px)}#all-properties,#clear-filters{font-size:10px;padding:3px 5px}.shelf-heading{gap:4px;padding-left:12px}.shelf-heading h2{font-size:14px}.price-fields{left:auto;right:-55px;width:210px}}
#options .camera-controls button{width:34px;margin:0;min-height:34px;padding:5px}#options .options-heading #options-close{width:28px;margin:0}#options .options-heading h2{margin:0}
@media(max-width:380px){#property-toolbar #refine-search{display:none}#property-toolbar #operation{flex-basis:78px}}
