:root{--ink:#183447;--muted:#71828a;--line:#e0e7e8;--paper:#f5f7f7;--white:#fff;--teal:#197b70;--teal-dark:#145e5b;--mint:#e9f3ee;--lime:#d9f08b;--amber:#d89a4b;--shadow:0 14px 42px #17394a1a;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--sans);color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.topbar{height:76px;display:flex;align-items:center;gap:26px;padding:0 25px;background:#fffffffa;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;min-width:220px;font-size:19px;line-height:1;font-weight:780;letter-spacing:-.6px;color:var(--ink)}.brand img{width:40px;height:40px}.brand-accent{color:var(--teal)}.brand small{display:block;margin-top:5px;color:#819098;font-size:8px;font-weight:800;letter-spacing:1.4px}.search-wrap{position:relative;flex:1;max-width:540px}.address-search{height:44px;display:flex;align-items:center;gap:11px;padding:0 12px;background:#f3f6f5;border:1px solid #e2e9e7;border-radius:10px;color:#7c8a8e}.address-search input{border:0;outline:0;background:transparent;flex:1;min-width:0;font-size:13px;color:var(--ink)}.address-search input::placeholder{color:#89969a}.address-search kbd{padding:3px 6px;border:1px solid #dbe2e2;background:#fff;border-radius:5px;font-size:10px}.suggestions{display:none;position:absolute;top:50px;left:0;right:0;z-index:20;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.suggestions.open{display:block}.suggestion{display:block;width:100%;text-align:left;padding:12px 15px;background:white;border:0;border-bottom:1px solid #eef1f0;color:var(--ink);font-size:12px}.suggestion:hover{background:#f0f6f2}.suggestion small{display:block;color:var(--muted);margin-top:4px}.topnav{display:flex;align-items:center;gap:4px;margin-left:auto}.nav{border:0;background:transparent;color:#61727a;border-radius:8px;padding:10px 12px;font-size:12px;font-weight:650}.nav.active{background:var(--mint);color:var(--teal-dark)}.saved-btn{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:white;color:var(--ink);font-size:12px;font-weight:700}.workspace{height:calc(100vh - 76px);min-height:600px;display:grid;grid-template-columns:370px minmax(0,1fr)}.sidepanel{background:#fff;border-right:1px solid var(--line);overflow-y:auto;padding:23px 22px 14px}.eyebrow{font-size:9px;letter-spacing:1.55px;font-weight:800;color:#839195}.intro h1{font:500 30px/1.11 var(--serif);letter-spacing:-.6px;margin:9px 0 8px}.intro h1 em{color:var(--teal);font-style:normal}.intro p{font-size:12px;line-height:1.55;color:var(--muted);margin:0}.intent-tabs{display:flex;gap:5px;margin:16px 0 14px;padding:4px;background:#f3f6f4;border-radius:9px}.intent{flex:1;border:0;background:transparent;color:#6d7b7e;padding:8px 4px;border-radius:7px;font-size:10px;font-weight:750}.intent.active{background:white;color:var(--teal);box-shadow:0 1px 3px #163a3014}.selected-property{background:#f0f6f2;border:1px solid #ddebe2;border-radius:12px;padding:15px;min-height:164px}.empty-mark{float:right;width:34px;height:34px;background:white;border-radius:9px;display:grid;place-items:center}.empty-mark img{width:27px;height:27px}.selected-property h2{font-size:16px;letter-spacing:-.2px;margin:7px 0 4px}.selected-property p{font-size:11px;color:var(--muted);line-height:1.45;margin:0}.property-actions{display:flex;gap:7px;margin-top:13px}.btn-primary,.btn-light{border:0;border-radius:8px;padding:10px 12px;font-size:10px;font-weight:750}.btn-primary{background:var(--teal);color:white}.btn-primary:hover{background:#11665f}.btn-primary:disabled,.btn-light:disabled{opacity:.45;cursor:not-allowed}.btn-light{background:#fff;color:#52646b;border:1px solid var(--line)}.info-section{margin-top:20px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-head h3{font-size:12px;margin:0}.text-button{border:0;background:transparent;color:var(--teal);font-size:10px;font-weight:700}.tag{border-radius:99px;background:#f4f4ec;color:#967744;padding:5px 8px;font-size:8px;font-weight:800;letter-spacing:.4px}.layer-toggle{display:flex;align-items:center;gap:9px;padding:8px 1px;border-bottom:1px solid #f0f2ef;cursor:pointer}.layer-toggle>input{accent-color:var(--teal);margin:0}.layer-toggle>span:nth-of-type(2){flex:1}.layer-toggle b,.layer-toggle small{display:block}.layer-toggle b{font-size:10px}.layer-toggle small{color:#8a9799;font-size:9px;margin-top:3px}.layer-toggle i{font-style:normal;display:grid;place-items:center;width:15px;height:15px;border:1px solid #dbe2df;border-radius:50%;font-size:9px;color:#80908e}.layer-swatch{width:12px;height:12px;border-radius:3px;background:#258a79}.zoning-swatch{background:#d9d08c}.heritage-swatch{background:#b587ac}.trca-swatch{background:#76a8c9}.permit-swatch{background:#d29352}.next-steps{margin-top:20px}.project-row{display:flex;align-items:center;gap:10px;width:100%;padding:9px 0;border:0;border-top:1px solid #eef1ef;background:transparent;text-align:left;color:var(--ink)}.project-row>span:nth-child(2){flex:1}.project-row b,.project-row small{display:block}.project-row b{font-size:10px}.project-row small{color:#899597;font-size:9px;margin-top:3px}.project-row>span:last-child{color:#96a19f}.project-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#f0f5f1;color:var(--teal);font-size:15px}.project-row:hover b{color:var(--teal)}.repeat-card{margin-top:15px;display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #e6ebe7;border-radius:10px;background:#fafbf9}.repeat-card>div{flex:1}.repeat-card b{font-size:10px}.repeat-card p{margin:4px 0 0;font-size:9px;color:var(--muted);line-height:1.4}.icon-button{width:27px;height:27px;border:0;border-radius:8px;background:var(--teal);color:white}.side-footer{display:flex;justify-content:space-between;gap:8px;margin-top:13px;padding-top:10px;border-top:1px solid #edf0ef;color:#8a9698;font-size:8px}.side-footer a{color:var(--teal);text-decoration:none}.map-area{position:relative;min-width:0;overflow:hidden;background:#e8e8dc}.map{position:absolute;inset:0}.map-toolbar{position:absolute;z-index:3;top:14px;left:14px;right:14px;display:flex;align-items:center;gap:8px;pointer-events:none}.toolbar-group{display:flex;gap:3px;background:#fffffff2;border:1px solid #e2e8e6;box-shadow:0 5px 18px #17394a12;border-radius:10px;padding:4px;pointer-events:auto}.map-control{border:0;border-radius:7px;background:transparent;color:#52666b;padding:8px 10px;font-size:10px;font-weight:700}.map-control.active{background:var(--mint);color:var(--teal-dark)}.map-spacer{flex:1}.map-status{position:absolute;z-index:2;left:16px;top:74px;background:#ffffffef;border:1px solid #e2e8e4;border-radius:8px;padding:8px 10px;color:#748386;font-size:9px;box-shadow:0 4px 12px #233c3510}.map-attribution{position:absolute;right:8px;bottom:4px;z-index:2;background:#ffffffcf;padding:3px 5px;font-size:8px;color:#48595b}.map-legend{position:absolute;bottom:24px;right:14px;z-index:2;display:grid;gap:7px;padding:11px 12px;background:#ffffffef;border:1px solid #e2e8e4;border-radius:9px;box-shadow:var(--shadow);font-size:9px;color:#627176}.map-legend>b{font-size:8px;letter-spacing:1px;color:#899596}.map-legend span{display:flex;align-items:center;gap:7px}.legend-box{display:inline-block;width:10px;height:10px;border-radius:2px;background:#258a79}.legend-zone{background:#d9d08c}.legend-alert{background:#73a6c6}.legend-parcel{border:2px solid #167d70;background:transparent}.lead-dialog{width:min(560px,calc(100vw - 24px));border:1px solid var(--line);border-radius:16px;padding:0;box-shadow:0 20px 80px #0b24364d;color:var(--ink)}.lead-dialog::backdrop{background:#0f2b37a6;backdrop-filter:blur(3px)}.lead-dialog form{padding:23px}.dialog-head{display:flex;justify-content:space-between;gap:20px}.dialog-head h2{font:500 26px var(--serif);margin:5px 0}.dialog-head p{color:var(--muted);font-size:11px;margin:0}.dialog-close{align-self:flex-start;border:0;background:#f2f5f3;border-radius:8px;width:31px;height:31px;font-size:20px;color:#637477}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:19px}.form-grid label{display:grid;gap:5px;font-size:10px;font-weight:700;color:#59696d}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px 10px;font-size:11px;outline-color:#78ae9a;background:#fff;color:var(--ink)}.form-grid small{display:inline;color:#849194;font-weight:400}.full-field{grid-column:1/-1}.consent{grid-template-columns:16px 1fr!important;align-items:start;line-height:1.45;font-size:9px!important;font-weight:500!important}.consent input{width:auto;margin:2px 0;accent-color:var(--teal)}.honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}.form-footer span{font-size:10px;color:var(--teal)}
@media(max-width:1100px){.topbar{gap:12px;padding:0 14px}.brand{min-width:185px}.nav{padding:9px}.workspace{grid-template-columns:330px minmax(0,1fr)}.sidepanel{padding:18px 15px}}
@media(max-width:720px){.topbar{height:auto;min-height:64px;flex-wrap:wrap;gap:8px;padding:9px 12px}.brand{min-width:0;font-size:16px}.brand img{width:34px;height:34px}.brand small{display:none}.search-wrap{order:3;flex-basis:100%;max-width:none}.topnav{margin-left:auto}.topnav .nav{display:none}.topnav .nav.active{display:block}.saved-btn{padding:8px}.saved-btn span{display:none}.workspace{height:auto;min-height:calc(100vh - 112px);display:flex;flex-direction:column}.map-area{order:1;height:56vh;min-height:390px}.sidepanel{order:2;overflow:visible;border:0;border-top:1px solid var(--line);padding:18px 15px 30px}.map-legend{right:8px;bottom:22px}.map-toolbar{top:8px;left:8px;right:8px}.map-control{padding:8px}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.lead-dialog form{padding:18px}.map-status{top:58px;left:8px}.intro h1{font-size:28px}}
.application-swatch{background:#647fa0}.map-status{opacity:0;pointer-events:none;transition:opacity .2s}.map-status.visible{opacity:1}.property-report{margin-top:13px;background:white;border:1px solid var(--line);border-radius:12px;padding:13px}.report-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.report-heading h3{font-size:12px;margin:0}.report-heading>span{font-size:7px;letter-spacing:.8px;font-weight:800;color:var(--teal)}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.report-item{padding:8px;border-radius:8px;background:#f7f9f6;min-width:0}.report-item span,.report-item b{display:block}.report-item span{font-size:8px;color:#849193;margin-bottom:4px}.report-item b{font-size:10px;overflow-wrap:anywhere}.flag{margin-top:9px;border-radius:8px;padding:8px;font-size:9px;font-weight:700;line-height:1.45}.flag-warn{background:#fff2dc;color:#89602c}.flag-clear{background:#edf5ee;color:#47715e}.report-disclaimer{color:#7c898b;font-size:8px;line-height:1.45}.source-links{display:flex;gap:8px;flex-wrap:wrap}.source-links a{color:var(--teal);font-size:8px;font-weight:750;text-decoration:none}.recent-heading{margin-top:14px}.record{padding:8px 0;border-top:1px solid #edf0ee}.record b,.record span,.record small{display:block}.record b{font-size:9px}.record span{color:#6f7e80;font-size:8px;margin-top:3px}.record small{color:#8a9697;font-size:8px;line-height:1.4;margin-top:3px}.report-pro{margin-top:11px;width:100%}.loading{opacity:.7}
.deal-estimator{margin-top:17px;border:1px solid #dde8e4;border-radius:10px;background:#f7faf8;padding:12px}.deal-estimator summary{cursor:pointer;font-size:11px;font-weight:800;list-style:none}.deal-estimator summary::-webkit-details-marker{display:none}.deal-estimator summary span{float:right;font-size:7px;letter-spacing:.8px;color:#947b42;background:#f6efdc;border-radius:99px;padding:4px 6px}.deal-estimator>p{font-size:9px;line-height:1.45;color:#829092}.estimate-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.estimate-grid label{font-size:8px;color:#7f8d8e}.estimate-grid input,.estimate-grid select{display:block;width:100%;margin-top:4px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:7px 6px;font-size:10px;color:var(--ink)}.estimate-results{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;margin-top:9px}.estimate-results>div{padding:7px;background:white;border:1px solid #edf0ed;border-radius:7px;min-width:0}.estimate-results small,.estimate-results b{display:block}.estimate-results small{font-size:7px;line-height:1.2;color:#869294;min-height:19px}.estimate-results b{font-size:10px;overflow-wrap:anywhere}.estimate-results b.negative{color:#a15f31}.estimate-note{font-size:8px!important;color:#849194!important}.deal-estimator>.btn-light{font-size:9px;padding:8px}.back-home{color:var(--teal);font-weight:700;text-decoration:none;font-size:12px}

.source-error{margin:8px 0;padding:8px 9px;border-radius:7px;background:#fff3e8;color:#875424;font-size:9px;line-height:1.4}
.coverage-card{margin-top:12px;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:#fbfcfa}.coverage-card b,.coverage-card span{display:block}.coverage-card b{font-size:10px;color:var(--teal-dark)}.coverage-card span{margin-top:4px;font-size:9px;line-height:1.45;color:var(--muted)}.region-select{max-width:132px;font-size:10px!important;font-weight:700;color:var(--ink)}@media(max-width:720px){.region-select{max-width:115px}.map-toolbar .toolbar-group{gap:3px}}
.wetland-swatch{background:#87a655}.waterbody-swatch{background:#64acd1}.watercourse-swatch{background:#2e91bd}.contour-swatch{background:#c98068}.municipality-swatch{background:#607b94}.ecoregion-swatch{background:#a7a177}.park-swatch{background:#37845b}.reserve-swatch{background:#7e9d54}.wildlife-swatch{background:#ce9859}.federal-swatch{background:#9a6c91}

.address-label-marker{pointer-events:none;user-select:none;white-space:nowrap;color:#20383b;background:rgba(255,255,255,.92);border:1px solid rgba(34,70,70,.22);border-radius:3px;padding:1px 3px;font:700 9px/1.2 system-ui,-apple-system,'Segoe UI',sans-serif;box-shadow:0 1px 3px rgba(22,48,45,.2)}
.lot-analysis{margin:12px 0 3px;padding-top:11px;border-top:1px solid var(--line)}.lot-drawing{display:block;width:100%;height:145px;background:#f7f9f6;border:1px solid #e7ece8;border-radius:8px}.lot-drawing>text{font:9px Arial,sans-serif;fill:#627573}.lot-drawing>polygon{fill:#dcece7;stroke:#267c70;stroke-width:2;stroke-linejoin:round}.setback-envelope rect{fill:rgba(209,157,78,.24);stroke:#bc8240;stroke-width:1.5;stroke-dasharray:4 3}.lot-metrics{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.lot-metrics span{padding:7px;border-radius:7px;background:#f7f9f6;color:#7b8989;font-size:8px}.lot-metrics strong{display:block;margin-top:3px;color:#263d3b;font-size:10px}.lot-note,.setback-tool p,.setback-tool small{color:#7b8989;font-size:8px;line-height:1.5}.setback-tool{margin-top:9px;border-top:1px solid #edf0ee;padding-top:8px}.setback-tool summary{cursor:pointer;color:#267c70;font-size:9px;font-weight:750}.setback-tool p{margin:7px 0}.setback-inputs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.setback-inputs label{color:#728181;font-size:8px}.setback-inputs input{display:block;width:100%;margin-top:3px;padding:6px;border:1px solid #dce4df;border-radius:6px;font:inherit;font-size:10px}.envelope-result{margin:8px 0;padding:7px;background:#f7f9f6;border-radius:6px;color:#536663;font-size:8px;line-height:1.45}
.unit-toggle{display:flex;border:1px solid #dce4df;border-radius:6px;overflow:hidden}.unit-toggle button{border:0;background:#fff;padding:4px 8px;color:#627573;font-size:8px;font-weight:750}.unit-toggle button[aria-pressed="true"]{background:#197b70;color:#fff}
.edge-measures{margin-top:8px}.edge-measures>b{display:block;margin-bottom:5px;color:#728181;font-size:8px}.edge-measures>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.edge-measures span{padding:6px;border-radius:6px;background:#f7f9f6;color:#7b8989;font-size:8px}.edge-measures strong{display:block;margin-top:2px;color:#263d3b;font-size:10px}
.lot-drawing .edge-label{font:9px Arial,sans-serif;font-weight:700;fill:#183447;stroke:#fff;stroke-width:3px;paint-order:stroke;text-anchor:middle;dominant-baseline:middle}

.township-swatch{background:#b28761}
