@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--navy:#153354;--ink:#1c2a32;--muted:#7b8588;--line:#e6e9e7;--green:#7b9973;--cream:#fafbf8}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#121212}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{transition:background .18s,box-shadow .18s,color .18s}button:focus-visible,a:focus-visible{outline:3px solid #88aada;outline-offset:3px}input:focus,select:focus{outline:2px solid #527ca0;outline-offset:0}button:disabled{opacity:.5;cursor:wait}svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}[hidden]{display:none!important}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700}.brand{position:relative;overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:140%;max-width:none;left:-20%;top:50%;transform:translateY(-50%)}#splash{position:fixed;inset:0;z-index:3000;background:radial-gradient(ellipse at 50% 35%,#222523 0%,#141515 46%,#121212 80%);display:flex;align-items:center;justify-content:center;color:white;transition:opacity 1.2s ease,visibility 1.2s;overflow:hidden}#splash:before{content:'';position:absolute;inset:0;opacity:.11;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.35' filter='url(%23n)'/%3E%3C/svg%3E")}.splash-content{text-align:center;position:relative;padding:32px;animation:arrive 1s both}.splash-brand{width:min(440px,76vw);height:110px;margin:0 auto 35px;filter:grayscale(1) invert(1);mix-blend-mode:screen}.splash-rule{height:1px;width:42px;background:#6f7f6c;margin:0 auto 35px}.splash-content .eyebrow{color:#a8b6a2;letter-spacing:3px;font-size:10px}.splash-content h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(32px,4.5vw,52px);font-weight:400;letter-spacing:-1.7px;margin:18px 0}.splash-subtitle{font-size:14px;color:#999e98;line-height:1.9}.explore{display:flex;gap:58px;align-items:center;justify-content:space-between;margin:35px auto 0;border:1px solid #61715c;background:#dce5d4;color:#263122;border-radius:10px;padding:17px 23px;font-size:14px;font-weight:600}.explore:hover{background:#f0f4ec;box-shadow:0 0 40px #85977d22}.explore span{font-size:22px;font-weight:400}#load-status{font-size:10px;color:#8a9187;margin-top:18px}.splash-footer{position:absolute;bottom:30px;left:38px;right:38px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#6d736d}.leaving{opacity:0;visibility:hidden;pointer-events:none}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}#app{height:100dvh;display:flex;flex-direction:column;background:#fff}.topbar{height:78px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 27px;gap:25px;z-index:800;background:#fff}.header-brand{width:139px;height:42px}.header-divider{height:27px;width:1px;background:var(--line)}.project-name{display:flex;flex-direction:column;gap:4px}.project-name strong{font-size:13px;font-weight:600}.project-name span{font-size:10px;color:var(--muted)}.top-actions{display:flex;gap:19px;align-items:center;margin-left:auto}.private-label{font-size:10px;color:#8a9292;display:flex;align-items:center;gap:7px}.private-label i,.save-status i{width:5px;height:5px;border-radius:50%;background:#7d9875;display:inline-block}.text-button{border:0;background:none;color:var(--navy);font-size:11px;padding:9px 0}.nav-button{border:1px solid #d8deda;border-radius:7px;background:#fff;padding:10px 13px;display:flex;align-items:center;gap:9px;font-size:11px;font-weight:600}.nav-button:hover{background:#f1f5ed}.workspace{flex:1;display:flex;overflow:hidden;min-height:0}.map-shell{position:relative;flex:1;min-width:0;background:#e5e8df;overflow:hidden}#map{height:100%;width:100%;background:#e7eadd}.map-heading{position:absolute;z-index:500;top:24px;left:26px;background:#ffffffed;backdrop-filter:blur(12px);padding:17px 21px;border:1px solid #ffffff99;box-shadow:0 6px 24px #17311608;border-radius:10px;pointer-events:none}.map-heading .eyebrow{color:#829077;font-size:8px;letter-spacing:2px}.map-heading h2{font:500 22px Manrope,sans-serif;letter-spacing:-.8px;margin:7px 0}.map-heading p{font-size:10px;color:#7c867a;margin:0}.map-toolbar{position:absolute;z-index:600;left:26px;top:143px;display:flex;gap:8px}.segmented{display:flex;background:#ffffffed;border:1px solid #fff;border-radius:8px;padding:3px;box-shadow:0 3px 12px #00000010}.segmented button{border:0;background:none;border-radius:5px;padding:10px 16px;font-size:11px;color:#61705e}.segmented button.active{background:#253b32;color:#fff}.segmented button span{padding-left:8px}.map-button{display:flex;align-items:center;gap:8px;border:1px solid #fff;background:#fffffff2;border-radius:8px;padding:0 12px;font-size:11px;color:#435141;box-shadow:0 3px 12px #00000010}.map-right{position:absolute;right:22px;top:24px;z-index:600;display:flex;flex-direction:column;border:1px solid #fff;border-radius:8px;box-shadow:0 3px 12px #00000015;background:#fff;padding:3px}.icon-button{display:flex;align-items:center;justify-content:center;border:0;background:transparent;width:37px;height:37px;font-size:23px;color:#53634e;border-radius:5px}.icon-button:hover{background:#edf1e9}.map-right>span{height:1px;margin:3px 7px;background:var(--line)}.map-bottom{position:absolute;left:26px;bottom:29px;z-index:600;display:flex;gap:10px;flex-direction:column;align-items:flex-start}.legend{display:flex;align-items:center;gap:16px;background:#ffffffef;border:1px solid white;border-radius:7px;padding:12px 15px;font-size:10px;box-shadow:0 4px 12px #00000010}.legend span{display:flex;align-items:center;gap:6px}i.available,i.sold{display:inline-block;width:8px;height:8px;border-radius:50%;background:#a4be8c;flex-shrink:0}i.sold{background:#ce8782}.legend-separator{height:13px;width:1px;background:#dfe4da}.legend button{border:0;background:transparent;font-size:10px;color:#465b3e;padding:0}.legend button[aria-pressed=true]{font-weight:700}.map-note{font-size:8px;background:#ffffffd9;padding:5px 8px;border-radius:4px;color:#64705c}.north{position:absolute;right:30px;bottom:45px;z-index:500;display:flex;align-items:center;flex-direction:column;font-size:9px;font-weight:700;color:#fff;text-shadow:0 1px 4px #000}.north span{font-size:30px}.editor{width:470px;max-width:45vw;flex-shrink:0;display:flex;flex-direction:column;background:#fff;border-left:1px solid #e1e6dc;z-index:700;min-height:0}.editor-title{display:flex;align-items:center;justify-content:space-between;padding:25px 22px 18px}.editor-title .eyebrow{color:#929c8e;font-size:8px}.editor-title h2{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.7px;margin:8px 0 0;font-weight:650;display:flex;align-items:center;gap:10px}.editor-title h2 span{display:inline-block;font:500 10px 'DM Sans',sans-serif;background:#eff2eb;color:#829079;padding:4px 7px;border-radius:5px}.editor-summary{display:flex;margin:0 22px 20px;border:1px solid #e4e9df;border-radius:8px;padding:14px 18px;gap:25px;background:#fafcf8}.editor-summary>div{display:flex;align-items:center;gap:8px}.editor-summary strong{font-size:19px;font-weight:500;letter-spacing:-.5px}.editor-summary span{font-size:10px;color:#7e8877}.editor-tools{display:flex;gap:8px;margin:0 22px 16px}.search{display:flex;align-items:center;gap:8px;flex:1;min-width:0;border:1px solid #e0e5dc;border-radius:6px;padding:0 10px;color:#91a08a}.search svg{width:15px}.search input{border:0;background:none;width:100%;min-width:0;padding:11px 0;font-size:11px;color:#495344}.search input:focus{outline:none}.search:focus-within{outline:2px solid #527ca0}.editor-tools select{border:1px solid #e0e5dc;border-radius:6px;background:#fff;color:#65725f;font-size:10px;padding:0 6px;width:123px}.selected-editor{margin:0 22px 14px;padding:11px 13px;border:1px solid #dce5d5;border-radius:7px;background:#f6f9f2}.selection-title{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-bottom:7px}.selection-title .text-button{font-size:9px;padding:0}.selected-editor label{font-size:9px;display:block;color:#78866f}.selected-editor input{display:block;width:100%;font-size:11px;margin-top:6px;padding:8px;border:1px solid #e1e8da;background:#fff;border-radius:4px;color:#3a4934}.selected-editor small{display:block;font-size:8px;color:#8d9985;margin-top:7px}.grid-wrap{flex:1;overflow:auto;min-height:100px;border-top:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#dce3d6 transparent}table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}th{position:sticky;top:0;background:#fafbf8;text-align:left;color:#84907b;font-size:9px;font-weight:500;padding:13px 7px;border-bottom:1px solid var(--line);z-index:1}th:first-child{width:65px;padding-left:22px}th:nth-child(2){width:105px}th:nth-child(3){width:95px}th:last-child{padding-right:15px}th span{font-size:7px;color:#a2aaa0}td{padding:7px 5px;height:45px;border-bottom:1px solid #f0f2ed}td:first-child{padding-left:16px}td:last-child{padding-right:15px}td input,td select{width:100%;padding:7px 5px;border:1px solid transparent;border-radius:4px;font-size:10px;background:transparent;color:#62715a}td input:hover{border-color:#e2e8dc;background:#fff}td select{font-size:9px;background:#eff5e8;color:#5e7a4b;padding-left:6px;cursor:pointer}td select.sold-state{background:#f9e9e7;color:#b56d66}.lot-link{font-size:10px;font-weight:600;color:#485d3b;border:0;background:none;white-space:nowrap;padding:7px 5px}tr.selected td{background:#f0f5e9}tr.selected td:first-child{box-shadow:inset 3px 0 #708e5c}tr:hover td{background:#f8faf4}.editor-hint{display:flex;align-items:center;gap:9px;padding:13px 22px;font-size:9px;line-height:1.6;color:#929d89;border-top:1px solid var(--line)}.editor-hint svg{width:16px;flex-shrink:0}.editor-footer{padding:13px 22px 16px;background:#fafbf8;border-top:1px solid var(--line)}.save-status{display:flex;align-items:center;gap:6px;font-size:9px;color:#7e8b76;margin-bottom:11px}.footer-buttons{display:flex;gap:9px}.primary-button,.secondary-button{border:1px solid var(--navy);border-radius:6px;padding:11px 14px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;font-weight:500;background:var(--navy);color:#fff}.primary-button{flex:1}.primary-button:hover{background:#244c76}.primary-button svg{width:15px}.secondary-button{border-color:#d9e0d3;color:#637557;background:#fff}.editor-footer p{font-size:8px;line-height:1.6;color:#a0a99a;margin:10px 0 0}.editor.closed{display:none}.leaflet-container{font-family:'DM Sans',sans-serif}.leaflet-control-attribution{font-size:7px!important;background:#ffffffcc!important;color:#7d8479}.leaflet-tooltip.lot-label{background:none;border:0;box-shadow:none;color:#223e20;font-size:9px;font-weight:700;padding:0;text-shadow:0 0 3px #ffffff;pointer-events:none}.leaflet-tooltip.lot-label:before{display:none}.leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 10px 50px #172d2a33;padding:0}.leaflet-popup-content{margin:0;width:270px!important}.leaflet-popup-close-button{top:10px!important;right:10px!important;color:#8a9585!important}.lot-card{padding:22px}.lot-card .eyebrow{font-size:8px;color:#92a086}.lot-card h3{font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-1px;margin:6px 0 9px}.status-badge{display:inline-flex;align-items:center;gap:5px;background:#eef5e7;border-radius:4px;color:#70845e;padding:4px 6px;font-size:9px}.status-badge.sold-badge{background:#fae9e5;color:#b47065}.card-details{display:flex;flex-direction:column;gap:16px;margin-top:21px}.card-detail{display:flex;gap:11px;align-items:flex-start}.card-detail svg{color:#87967b;width:17px}.card-detail span{display:block;font-size:9px;color:#8b9780;margin-bottom:4px}.card-detail strong{display:block;font-size:14px;font-weight:500;line-height:1.4}.card-detail.services strong{font-size:11px;line-height:1.7}.card-foot{border-top:1px solid #e9ede4;padding-top:12px;margin-top:17px;font-size:8px;color:#9aa58e}.poi-pin{background:#fff;border:1px solid #d9e2d1;border-radius:9px;display:flex;align-items:center;gap:8px;padding:8px 10px;box-shadow:0 3px 15px #12271926;width:max-content;white-space:nowrap;color:#30492b;font-size:9px;font-weight:600}.poi-pin svg{width:16px;color:#758e63}.poi-pin:after{content:'';position:absolute;bottom:-5px;left:14px;width:9px;height:9px;background:white;transform:rotate(45deg);border-right:1px solid #d9e2d1;border-bottom:1px solid #d9e2d1}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:8px;background:#213b2e;color:#fff;font-size:12px;z-index:4000;box-shadow:0 6px 25px #0002;max-width:90vw}.map-error{position:absolute;left:26px;bottom:120px;z-index:600;background:#fff9ec;color:#78603d;font-size:10px;max-width:300px;padding:12px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#empty-state{text-align:center;color:#87947c;font-size:12px;padding:30px}
@media(min-width:1600px){.editor{width:510px}.map-heading{top:32px;left:32px}.map-toolbar{left:32px;top:153px}}
@media(max-width:1100px){.private-label{display:none}.top-actions{gap:12px}.editor{width:410px;max-width:46vw}.editor-title{padding:21px 16px 15px}.editor-summary{margin:0 16px 15px;gap:20px;padding:12px}.editor-tools{margin:0 16px 12px}.selected-editor{margin:0 16px 12px}.map-heading{padding:14px;left:15px;top:17px}.map-heading h2{font-size:19px}.map-toolbar{left:15px;top:125px}.map-right{right:12px;top:17px}.map-bottom{left:15px}.topbar{gap:17px;padding:0 19px}.editor-footer{padding:12px 16px}.editor-hint{padding:11px 16px}th:first-child{padding-left:13px;width:58px}th:nth-child(2){width:95px}th:nth-child(3){width:80px}td:first-child{padding-left:7px}td:last-child{padding-right:8px}}
@media(max-width:760px){.topbar{height:65px;padding:0 15px;gap:12px}.header-brand{width:103px;height:34px}.header-divider{height:22px}.project-name strong{font-size:10px}.project-name span{font-size:8px}.top-actions{gap:5px}.nav-button{padding:8px;border:0}.nav-button span:last-child{display:none}.nav-button svg{width:21px}.top-actions>.text-button{font-size:9px}.workspace{position:relative}.editor{position:absolute;bottom:0;right:0;left:0;width:100%;max-width:none;height:70%;border-radius:18px 18px 0 0;box-shadow:0 -6px 40px #122b2430;border:0}.editor-title{padding:15px 19px 10px}.editor-title:before{content:'';position:absolute;top:6px;width:32px;height:3px;border-radius:4px;left:calc(50% - 16px);background:#dce2d7}.editor-title h2{font-size:18px;margin-top:4px}.editor-title .eyebrow{font-size:7px}.editor-summary{padding:8px 12px;margin-bottom:9px}.editor-summary strong{font-size:16px}.editor-tools{margin-bottom:10px}.search input{padding:8px 0}.editor-hint{display:none}.editor-footer{padding:9px 16px max(9px,env(safe-area-inset-bottom))}.editor-footer p{font-size:7px;margin:6px 0 0}.save-status{font-size:8px;margin-bottom:7px}.primary-button,.secondary-button{padding:9px}.grid-wrap{min-height:70px}.selected-editor{padding:8px 10px;margin-bottom:8px}.selected-editor small{display:none}.selected-editor input{padding:6px;font-size:10px}.map-heading{top:15px;left:13px;padding:12px 14px;max-width:calc(100% - 75px)}.map-heading h2{font-size:18px}.map-heading p{font-size:8px}.map-heading .eyebrow{font-size:7px}.map-toolbar{top:115px;left:13px}.map-toolbar button{font-size:10px}.map-right{top:15px;right:10px}.icon-button{height:34px;width:34px}.map-bottom{left:13px;bottom:27px}.legend{gap:12px;padding:10px 12px;font-size:9px}.legend button{font-size:9px}.north{right:21px;bottom:48px}.splash-brand{height:85px;margin-bottom:30px}.splash-footer{justify-content:center;bottom:22px;left:15px;right:15px;font-size:7px;letter-spacing:1.3px}.splash-footer span:last-child{display:none}.splash-content h1{letter-spacing:-1px}.splash-subtitle{font-size:12px}.explore{font-size:12px;padding:15px 20px;margin-top:28px}.leaflet-popup-content{width:248px!important}.lot-card{padding:19px}.lot-card h3{font-size:24px}th:first-child{width:60px}th:nth-child(2){width:105px}th:nth-child(3){width:90px}.map-shell.panel-open .map-toolbar{display:none}}
@media(prefers-reduced-motion:reduce){.splash-content{animation:none}.leaflet-zoom-animated{transition:none!important}}
