@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{--ink:#243c38;--muted:#6e7c75;--green:#315d4c;--line:#dce2d8;--paper:#fafbf6;--orange:#cd6a3c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);padding:10px 13px}button:hover{background:#edf2e8}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d18c4d}header{height:88px;display:flex;align-items:center;gap:34px;padding:0 30px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--ink);font:800 24px Manrope,sans-serif;letter-spacing:2px}.brand span{color:var(--orange)}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3.3px;margin-top:4px}.project{border-left:1px solid var(--line);padding-left:28px;font-size:10px;letter-spacing:1.4px;color:var(--muted)}.project b{display:block;font-size:14px;letter-spacing:0;color:var(--ink);margin-top:5px}.header-actions{margin-left:auto;display:flex;gap:9px;align-items:center}.badge{font-size:9px;letter-spacing:1px;color:var(--green);padding:7px;background:#eaf0e3;border-radius:4px;margin-right:12px}main{display:grid;grid-template-columns:370px 1fr;height:calc(100dvh - 88px)}aside{padding:28px 25px 14px;overflow:auto}.eyebrow,.sectiontitle{font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--muted)}h1{font:600 37px/1.13 Manrope,sans-serif;letter-spacing:-1.5px;margin:12px 0}.muted{color:var(--muted);line-height:1.7;font-size:12px}.tabs{display:flex;border-bottom:1px solid var(--line);margin:24px 0}.tabs button{flex:1;border:0;border-radius:0;background:none;padding:12px 4px;color:var(--muted)}.tabs button.active{border-bottom:2px solid var(--green);font-weight:700;color:var(--green)}.tabs span{font-size:10px}.sectiontitle{margin:23px 0 12px}select,input,textarea{width:100%;border:1px solid var(--line);background:white;padding:11px;border-radius:6px;color:var(--ink)}textarea{min-height:80px;resize:vertical}.hint{font-size:11px;color:var(--muted);line-height:1.6}.layer{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid #e8ebe3}.layer input{width:16px;accent-color:var(--green);margin-top:3px}.layer label{flex:1;cursor:pointer}.layer b{display:block;font-size:12px}.layer small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.swatch{height:8px;width:8px;border-radius:50%;margin-top:5px}.wide{width:100%;margin-top:20px;background:var(--green);color:white}.note{background:#eef1e7;padding:16px;margin-top:24px;border-radius:7px;font-size:12px}.note p{font-size:11px;line-height:1.7;margin-bottom:0}footer{font-size:10px;color:var(--muted);line-height:1.6;margin-top:30px}.mapwrap{position:relative;border-left:1px solid var(--line)}#map{height:100%;background:#e7e6dc}.map-top{position:absolute;top:20px;left:20px;right:20px;z-index:500;display:flex;gap:8px;align-items:center;pointer-events:none}.map-top>*{pointer-events:auto}.map-top div{background:var(--paper);border-radius:6px;padding:13px 15px;font-size:9px;letter-spacing:1px;box-shadow:0 2px 12px #243c3814;margin-right:auto}.dot{display:inline-block;width:6px;height:6px;background:var(--orange);border-radius:50%;margin-right:8px}.map-bottom{position:absolute;bottom:25px;left:25px;right:25px;z-index:500;background:var(--paper);padding:18px 20px;box-shadow:0 6px 30px #243c3820;border-radius:9px}.map-bottom b{display:block;font-family:Manrope,sans-serif}.map-bottom span{display:block;font-size:10px;color:var(--muted);margin-top:6px}.map-bottom button{position:absolute;right:16px;top:15px;background:var(--green);color:white}.leaflet-control-zoom{margin-top:85px!important}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:8px}h2{font:700 17px Manrope,sans-serif}.primary{background:var(--green);color:white}.card{border:1px solid var(--line);border-radius:8px;padding:14px;margin:12px 0;background:white;cursor:pointer}.card:hover{border-color:var(--green)}.card h3{font-size:13px;margin:7px 0}.card p{font-size:11px;line-height:1.6;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.pill{display:inline-block;padding:4px 7px;background:#f1eee2;border-radius:4px;font-size:9px}.empty{text-align:center;padding:40px 10px;color:var(--muted);font-size:12px;line-height:1.8}dialog{width:min(570px,94vw);max-height:90dvh;border:1px solid var(--line);border-radius:12px;padding:25px;color:var(--ink)}dialog::backdrop{background:#142e285c;backdrop-filter:blur(3px)}label.field{display:block;margin:13px 0;font-size:12px}label.field input,label.field select,label.field textarea{margin-top:6px}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formactions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.danger{color:#a3442e;margin-right:auto}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;z-index:2000;border-radius:7px;padding:12px 20px;display:none;max-width:90vw}#mapnotice{position:absolute;top:80px;left:70px;right:30px;z-index:600;background:#fff2d8;padding:14px;border-radius:6px;font-size:12px}.photo{max-width:100%;max-height:220px;border-radius:5px;margin-top:10px}.leaflet-tooltip{font:11px 'DM Sans',sans-serif}.coord{font-size:10px;color:var(--muted)}@media(max-width:850px){header{padding:0 15px;height:75px}.project,.badge{display:none}.header-actions{gap:5px}.header-actions button{font-size:11px;padding:8px}main{height:auto;display:flex;flex-direction:column-reverse}.mapwrap{height:53dvh;min-height:350px}aside{padding:20px}h1{font-size:27px}h1 br{display:none}.map-top{left:10px;right:10px;top:10px}.map-top div{display:none}.map-top button{font-size:11px}.map-bottom{left:10px;right:10px;bottom:15px;padding:12px}.map-bottom button{position:static;margin-top:12px;padding:8px}.map-bottom span{font-size:9px}}
.tabs{flex-wrap:wrap}.tabs button{font-size:11px;min-width:55px}.data-summary{background:#e7eee1;border:1px solid #d4dfcc;border-radius:7px;padding:12px;margin-bottom:18px;font-size:11px}.data-summary span{display:block;font-size:10px;color:var(--muted);margin:6px 0}.data-summary button{padding:5px 0;border:0;background:none;font-size:11px;font-weight:700}.statgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.statgrid div{background:#eef1e7;padding:12px;border-radius:6px}.statgrid b{display:block;font:700 22px Manrope,sans-serif}.statgrid span{font-size:10px;color:var(--muted)}#gisFilter{margin:10px 0}.gisrow{padding:10px 0;border-bottom:1px solid var(--line)}.gisline{display:flex;gap:8px;align-items:center}.gisline input{width:15px;accent-color:var(--green);flex-shrink:0}.gisline label{flex:1;font-size:12px;overflow-wrap:anywhere;cursor:pointer}.gisrow small{display:block;font-size:10px;color:var(--muted);margin:4px 0 0 23px}.source-info{border:0;padding:3px;font-size:17px;background:none}.attribute-popup{max-height:350px;overflow:auto;min-width:230px}.attribute-popup p{font-size:10px;color:var(--muted)}.attribute-popup table,.fieldtable{border-collapse:collapse;width:100%;font-size:10px}.attribute-popup td,.attribute-popup th,.fieldtable td,.fieldtable th{text-align:left;border-bottom:1px solid var(--line);padding:6px;overflow-wrap:anywhere;max-width:240px}.attribute-popup th{width:40%}#sourceViewer{width:min(1100px,96vw)}#sourceBody{line-height:1.6;font-size:13px}.sourcebuttons{display:flex;gap:10px;margin:20px 0}.errornote{background:#fff0dc;padding:12px;border-radius:5px}.source-note{padding:13px;background:#eef1e7;margin:10px 0;border-radius:6px;font-size:11px}.source-note p{margin:6px 0;color:var(--muted);line-height:1.6}.sheetlink{display:flex;text-align:left;justify-content:space-between;gap:12px;width:100%;margin:7px 0;align-items:center}.sheetlink b{font-size:11px}.sheetlink span{font-size:9px;color:var(--muted);flex-shrink:0}.sheetlink.compact{padding:7px 10px}.sheet-preview{width:100%;height:auto;border:1px solid var(--line)}.sheettext{white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.5 monospace;max-height:450px;overflow:auto}.doclink{display:block;text-decoration:none;color:var(--ink);padding:12px;border:1px solid var(--line);border-radius:6px;margin:8px 0}.doclink:hover{background:#eef1e7}.doclink b{font-size:11px;display:block}.doclink small{font-size:10px;color:var(--muted);display:block;margin-top:5px}#sheetList{max-height:300px;overflow:auto;margin-top:10px}a{color:var(--green)}
.theme-picker{margin-top:22px}.theme-picker .sectiontitle{margin:0 0 10px}.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.theme-options button{position:relative;padding:10px 8px 10px 30px;text-align:left;background:transparent;min-height:60px}.theme-options b{font-size:10px;display:block}.theme-options small{font-size:9px;color:var(--muted);display:block;line-height:1.4;margin-top:4px}.theme-icon{position:absolute;left:9px;top:11px;font-size:16px}.theme-options button[aria-pressed=true]{border:2px solid var(--green);background:#e8efe3;padding:9px 7px 9px 29px}.theme-picker>.hint{margin:9px 0 0;font-size:10px}.tabs{margin-top:18px}body[data-theme=sketch]{--paper:#fbf6e9;--ink:#453f35;--muted:#817768;--line:#d9ceba;--green:#6c7756;font-family:'DM Sans',sans-serif}body[data-theme=sketch] header{background:#e9e3d6;box-shadow:0 2px 0 #514a3a22}body[data-theme=sketch] h1{font-weight:400}body[data-theme=sketch] button,body[data-theme=sketch] .card{border-radius:2px}body[data-theme=sketch] .leaflet-tile-pane{filter:saturate(.4) sepia(.16)}body[data-theme=sketch] .map-bottom{border:1px solid #5f5748;border-radius:2px;box-shadow:3px 3px 0 #5f574830}body[data-theme=sketch] .theme-options button[aria-pressed=true]{background:#e8e4d5}
body[data-theme=cad]{--paper:#25282b;--ink:#e1e8eb;--muted:#a8b3bb;--line:#50565d;--green:#8ddaf3;font-family:Consolas,'Courier New',monospace}body[data-theme=cad] header{background:linear-gradient(#626971,#3a4149);border-bottom:3px solid #858d93}body[data-theme=cad] h1{font:500 26px/1.2 Consolas,monospace;letter-spacing:0}body[data-theme=cad] #map{background-color:#080a0b;background-image:linear-gradient(#29323866 1px,transparent 1px),linear-gradient(90deg,#29323866 1px,transparent 1px);background-size:24px 24px}body[data-theme=cad] .brand{font-family:Consolas,monospace}body[data-theme=cad] .map-bottom{border-radius:0;border:1px solid #7f8c92;box-shadow:none}body[data-theme=cad] button,body[data-theme=cad] input,body[data-theme=cad] select,body[data-theme=cad] textarea,body[data-theme=cad] .card{background:#353b40;color:var(--ink);border-color:#606a72;border-radius:1px}body[data-theme=cad] .primary,body[data-theme=cad] .wide,body[data-theme=cad] .map-bottom button{background:#75b5cc;color:#101a20}body[data-theme=cad] .theme-options button[aria-pressed=true]{background:#334b57;border-color:#8ddaf3}body[data-theme=cad] .leaflet-control-scale-line{background:#202b31;color:#d9f2f9;border-color:#c7d9df}body[data-theme=cad] .leaflet-popup-content-wrapper,body[data-theme=cad] .leaflet-popup-tip{background:#252c31;color:#e1e8eb}body[data-theme=cad] .leaflet-control-attribution{background:#252c31;color:#a8b3bb}
body[data-theme=earth]{--paper:#18242d;--ink:#e9f0f5;--muted:#a5b7c5;--line:#3b4d5b;--green:#8bc7ff}body[data-theme=earth] header{background:#111b23}body[data-theme=earth] .brand{letter-spacing:1px}body[data-theme=earth] button,body[data-theme=earth] input,body[data-theme=earth] select,body[data-theme=earth] textarea,body[data-theme=earth] .card{background:#243440;color:var(--ink);border-color:#435765;border-radius:12px}body[data-theme=earth] .primary,body[data-theme=earth] .wide,body[data-theme=earth] .map-bottom button{background:#8bc7ff;color:#102330}body[data-theme=earth] .theme-options button[aria-pressed=true]{background:#2a455a;border-color:#8bc7ff}body[data-theme=earth] .leaflet-popup-content-wrapper,body[data-theme=earth] .leaflet-popup-tip{background:#18242d;color:#e9f0f5}body[data-theme=earth] .map-bottom{background:#18242df0;border:1px solid #506474}body[data-theme=earth] .leaflet-control-attribution{background:#18242dd9;color:#eee}
body[data-theme=cad] .note,body[data-theme=cad] .source-note,body[data-theme=cad] .statgrid div,body[data-theme=cad] .data-summary,body[data-theme=cad] .pill,body[data-theme=cad] .badge{background:#303a40;color:var(--ink);border-color:var(--line)}body[data-theme=earth] .note,body[data-theme=earth] .source-note,body[data-theme=earth] .statgrid div,body[data-theme=earth] .data-summary,body[data-theme=earth] .pill,body[data-theme=earth] .badge{background:#243744;color:var(--ink);border-color:var(--line)}body[data-theme=cad] dialog,body[data-theme=earth] dialog{background:var(--paper);color:var(--ink)}body[data-theme=cad] button:hover,body[data-theme=earth] button:hover{filter:brightness(1.17)}body[data-theme=cad] #mapnotice,body[data-theme=earth] #mapnotice{color:#352b17}body[data-theme=cad] .errornote,body[data-theme=earth] .errornote{background:#664422;color:white}body[data-theme=neighbor] .layer b{font-size:13px}body[data-theme=neighbor] .tabs button{font-size:12px;padding:14px 3px}body[data-theme=neighbor] .theme-options b{font-size:11px}body[data-theme=neighbor] button{min-height:38px}body[data-theme=neighbor] .gisline label{font-size:13px}body[data-theme=neighbor] .hint{font-size:12px}body[data-theme=neighbor] .muted{font-size:13px}body[data-theme=neighbor] .source-note,body[data-theme=neighbor] .doclink b{font-size:12px}@media(max-width:850px){.theme-options{grid-template-columns:repeat(2,1fr)}.theme-picker{margin-top:15px}body[data-theme=cad] h1{font-size:24px}}
.ask-title{display:flex;gap:12px;align-items:flex-start}.ask-title>span{font-size:26px;color:var(--green)}.ask-title h2{margin:0 0 7px}.ask-title p{font-size:11px;line-height:1.5;color:var(--muted);margin:0}.ai-status{font-size:11px;line-height:1.6;border:1px solid var(--line);border-radius:6px;padding:12px;margin:18px 0}.ai-status.connected{background:#e6f1e6;color:#285635}.ai-status.pending{background:#f5edda;color:#765c28}#question{min-height:110px}.photo-attach{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.photo-attach label{cursor:pointer;border:1px dashed var(--line);padding:11px;border-radius:6px;font-size:12px}.photo-attach input{max-width:100%;font-size:10px;padding:6px}.photo-attach button{font-size:10px}#questionPhotoPreview img{width:100%;max-height:200px;object-fit:contain;background:#e6e5de;border-radius:6px;margin-top:10px}#questionPhotoPreview small{font-size:10px;color:var(--muted);overflow-wrap:anywhere;display:block}.question-examples{margin:24px 0}.question-examples .sectiontitle{display:block;margin:0 0 10px}.question-examples button{font-size:11px;display:block;width:100%;text-align:left;background:transparent;margin:6px 0}.answer-card{border-top:2px solid var(--green);padding:16px 0;margin-top:20px;font-size:12px;line-height:1.7}.answer-card h3{font-size:12px;margin:22px 0 9px}.answer-banner{font-size:9px;letter-spacing:.7px;color:var(--muted)}.answer-summary{font-size:14px;line-height:1.7}.answer-claim{margin:12px 0;padding-bottom:12px;border-bottom:1px solid var(--line)}.answer-cite{display:block;font-size:10px;margin:5px 0;overflow-wrap:anywhere}.answer-card ul{padding-left:18px}.answer-card li{margin:8px 0}.answer-source{border:1px solid var(--line);border-radius:6px;padding:12px;margin:10px 0}.answer-source>a{font-size:11px}.answer-source span{display:block;font-size:9px;color:var(--muted);margin-top:5px}.answer-source p{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.answer-loading{padding:24px 8px;font-size:12px;color:var(--muted)}#quickAsk{background:var(--green);color:var(--paper)}body[data-theme=cad] .ai-status.pending,body[data-theme=earth] .ai-status.pending{background:#4d4329;color:#ffe0a0}body[data-theme=cad] .ai-status.connected,body[data-theme=earth] .ai-status.connected{background:#24402f;color:#a9e0bc}button:disabled{opacity:.6;cursor:wait}@media(max-width:850px){.map-top{flex-wrap:wrap}#quickAsk{margin-left:auto;font-size:11px}.tabs button{min-width:48px}}

.evidence-quote{font-size:10px;color:var(--muted);border-left:2px solid var(--line);margin:8px 0;padding:4px 10px;white-space:pre-wrap}
.steve-brand{display:flex;flex-direction:column;gap:3px;min-width:220px}.steve-brand .brand{font-size:25px;letter-spacing:.09em}.steve-brand>span{font-size:10px;letter-spacing:.015em}.steve-brand .steve-tagline{font-size:11px;color:inherit;text-decoration:underline;text-underline-offset:3px}.shared-status{padding:12px;margin:14px 0;border:1px solid var(--line,#bac8bf);border-radius:7px;background:var(--paper,#f4f5ee);font-size:12px}.shared-status p{margin:7px 0;line-height:1.5}.shared-status button,.shared-status a{font-size:11px;margin:3px 7px 3px 0}.answer-actions{display:flex;flex-wrap:wrap;gap:6px}header{min-height:100px;height:auto;padding-top:12px;padding-bottom:12px}@media(max-width:900px){.steve-brand>span{max-width:250px;line-height:1.4}.steve-brand{min-width:0}.steve-brand .brand{font-size:21px}header{flex-wrap:wrap;gap:10px}}
@media(min-width:901px){main{height:calc(100dvh - 100px)}}
header{min-height:150px;padding:20px 30px;gap:26px;flex-wrap:wrap}.steve-brand{flex:1 1 460px;gap:8px}.steve-brand .brand{font-size:44px!important;line-height:1.05;letter-spacing:.06em}.steve-brand>span{font:600 19px/1.35 'DM Sans',sans-serif;letter-spacing:0;max-width:none}.steve-brand .steve-tagline{font:500 16px/1.4 'DM Sans',sans-serif;color:var(--ink)}.header-actions{flex-wrap:wrap}.project{padding-left:18px}
@media(min-width:851px){body{height:100dvh;display:flex;flex-direction:column}header{flex-shrink:0}main{height:auto;flex:1;min-height:0}aside,.mapwrap{min-height:0}}
@media(max-width:850px){header{height:auto;min-height:0;padding:18px 20px}.steve-brand{flex-basis:100%;gap:7px}.steve-brand .brand{font-size:36px!important}.steve-brand>span{font-size:18px;max-width:none}.steve-brand .steve-tagline{font-size:16px}.header-actions{margin-left:0}.project{display:block;border-left:0;padding-left:0}}
