@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Literata:wght@400;600;700&family=Fira+Code:wght@400&display=swap";:root{--bg: #f1f1f1;--bg-secondary: #e6e6e6;--text: #181818;--text-secondary: #393e46;--accent: #4a5f8a;--accent-hover: #3a4f7a;--border: #cecfd1;--garden-evergreen: #4a7a5c;--page-width: min(92%, 2160px);--ui-scale: 1;--viewport-height: calc(100dvh / var(--ui-scale));--font-serif: "Literata", Georgia, "Times New Roman", serif;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Fira Code", Consolas, monospace;font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-hover)}.site-nav{display:flex;align-items:center;gap:32px;width:var(--page-width);height:52px;margin:0 auto;border-bottom:1px solid var(--border)}.site-nav .wordmark{font:600 20px var(--font-serif);color:var(--text);text-decoration:none}.site-nav>div{position:relative;display:flex;gap:24px}.site-nav>div:before{content:"";position:absolute;left:-16px;top:50%;transform:translateY(-50%);height:20px;border-left:1px solid var(--border)}.site-nav>div a{display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:14px}.site-nav [aria-current]{color:var(--text);border-bottom:2px solid var(--garden-evergreen)}.app{display:grid;grid-template-columns:320px 1fr;width:var(--page-width);margin:16px auto 8px;height:calc(var(--viewport-height) - 108px);min-height:500px;border:1px solid #4a4a4a}.sidebar{position:relative;z-index:1000;display:flex;flex-direction:column;border-right:1px solid #4a4a4a;background:var(--bg);min-height:0}.search-section{position:relative;padding:22px 24px}.search-section label{font-size:13px;font-weight:500}.place-search,.species-search{position:relative;min-width:0}.place-search{margin-bottom:16px;z-index:2}.search-box{display:flex;align-items:center;border:1px solid var(--border);border-radius:3px;background:#fafafa;height:44px;margin-top:7px;padding:0 11px;gap:8px}.search-box>span{font-size:24px;line-height:1;color:var(--text-secondary)}.search-box input{width:100%;min-width:0;border:0;outline:none;background:transparent;font-size:14px;height:100%;color:var(--text)}.search-box:focus-within{border-color:var(--accent);outline:1px solid var(--accent)}input::-webkit-search-cancel-button{display:none}#clear{background:none;border:0;font-size:22px;padding:0 3px}.hint{font-size:11px;color:var(--text-secondary);margin:7px 0 0}.near-button{position:absolute;top:18px;left:18px;z-index:500;display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;min-height:44px;padding:0 14px;font-size:14px;font-weight:500;box-shadow:0 2px 6px #18181826}.near-button span:first-child{font-size:20px}.near-button:hover{background:var(--accent-hover)}#notice{font-size:12px;line-height:1.6;background:var(--bg-secondary);padding:10px 12px;margin-bottom:0;border-left:2px solid var(--accent)}.suggestions{position:absolute;top:100%;left:0;right:0;max-height:310px;overflow:auto;background:#fafafa;border:1px solid var(--border);border-radius:3px;box-shadow:0 4px 12px #00000012;z-index:1100}.suggestion{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;background:none;border:0;border-bottom:1px solid var(--border);text-align:left;padding:12px;font-size:11px}.suggestion>span:first-child{min-width:0}.suggestion strong{display:block;font-size:14px;font-weight:500}.suggestion small{display:block;font-size:11px;margin-top:3px;color:var(--text-secondary)}.suggestion:hover,.suggestion:focus-visible{background:var(--bg-secondary)}.suggestions>p{font-size:13px;padding:12px}.results{overflow:auto;flex:1;min-height:100px;padding:19px 24px 10px;border-top:1px solid #4a4a4a}.results,#tree-list{scrollbar-width:thin;scrollbar-color:#8a9b8d transparent}.results::-webkit-scrollbar,#tree-list::-webkit-scrollbar{width:6px}.results::-webkit-scrollbar-track,#tree-list::-webkit-scrollbar-track{background:transparent}.results::-webkit-scrollbar-thumb,#tree-list::-webkit-scrollbar-thumb{background:#8a9b8d;border-radius:6px}.results::-webkit-scrollbar-thumb:hover,#tree-list::-webkit-scrollbar-thumb:hover{background:var(--garden-evergreen)}h2{font:600 19px/1.35 var(--font-serif);margin:0}#summary{color:var(--text-secondary);font-size:12px;line-height:1.6;margin:8px 0 14px}.tree-row{display:flex;align-items:center;width:100%;background:transparent;border:none;border-top:1px solid var(--border);text-align:left;padding:14px 0;gap:10px}.tree-row:hover,.tree-row.selected{background:var(--bg-secondary)}.row-number{font:10px var(--font-mono);color:#62666d;align-self:flex-start;padding-top:5px}.row-text{min-width:0}.row-text strong{display:block;font-family:var(--font-serif);font-size:14px;font-weight:600;line-height:1.5}.row-text small{display:block;font-size:11px;color:var(--text-secondary);line-height:1.5;margin-top:4px}.row-arrow{margin-left:auto;color:var(--accent)}.list-note{font-size:11px;line-height:1.6;color:var(--text-secondary)}.data-footer{display:flex;flex-wrap:wrap;align-items:center;gap:3px 12px;padding:12px 24px;border-top:1px solid var(--border)}.data-footer p{font-size:11px;line-height:1.8;margin:0}.data-footer a{text-decoration:none}.data-footer a:hover,.site-footer a:hover{text-decoration:underline}.site-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0 0 8px;font-size:11px;line-height:24px}.site-footer a{display:inline-flex;align-items:center;min-height:24px;padding:0 6px;text-decoration:none}.site-footer .github-link{color:#62666d}#about{border:0;padding:0;background:none;color:var(--accent);font-size:11px;text-decoration:underline;text-underline-offset:3px}.map-section{position:relative;min-width:0}#map{height:100%;background:#e6e6e6}.leaflet-container{font-family:var(--font-sans)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--garden-evergreen);flex-shrink:0}.map-legend{position:absolute;bottom:22px;left:18px;z-index:500;background:#f1f1f1ed;padding:8px 12px;border:1px solid var(--border);border-radius:2px;display:flex;gap:8px;align-items:center;font-size:11px;pointer-events:none}.legend-entry{display:inline-flex;align-items:center;gap:6px}.park-swatch{width:13px;height:10px;background:#4a5f8a1a;border:1px dashed var(--accent)}.reset-button{position:absolute;right:18px;top:18px;z-index:500;background:var(--bg);border:1px solid var(--border);border-radius:2px;padding:7px 10px;display:flex;align-items:center;gap:7px;color:var(--accent);font-size:14px}.reset-button span{font-size:12px}.reset-button:hover{background:var(--bg-secondary)}.leaflet-bar{border:1px solid var(--border)!important;box-shadow:none!important;border-radius:2px!important}.leaflet-bar a{background:var(--bg);color:var(--text)}.leaflet-bottom.leaflet-right{bottom:24px;right:8px}.leaflet-control-attribution{font-size:9px!important;background:#f1f1f1dc!important}.detail{position:absolute;z-index:600;bottom:76px;left:18px;width:330px;max-width:calc(100% - 75px);padding:23px;border-radius:3px;border:1px solid var(--border);background:var(--bg);box-shadow:0 3px 18px #00000015}.close-detail,#close-about{position:absolute;top:6px;right:8px;border:0;background:none;padding:3px 8px;font-size:24px;color:var(--text-secondary)}.detail h2{margin:12px 15px 7px 0;font-size:22px;line-height:1.3}.botanical{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0 0 18px}.detail-meta{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font:10px var(--font-mono);color:var(--text-secondary)}.detail-meta strong{display:block;color:var(--text);font:16px var(--font-sans);margin-top:7px}.tree-id{font:10px var(--font-mono);color:var(--text-secondary);margin:14px 0 18px}.tree-id span{display:block;font-size:11px;margin-top:7px;overflow-wrap:anywhere;color:var(--text)}.directions{display:flex;justify-content:space-between;font-size:13px;padding:10px 0;border-top:1px solid var(--border);text-decoration:none}.directions:hover{text-decoration:underline}.detail-footnote{font-size:10px;color:var(--text-secondary);margin:7px 0 0}.empty-state{padding:12px 0;color:var(--text-secondary)}.empty-state>span{display:none}.empty-state h3{font:600 17px var(--font-serif);color:var(--text);margin:10px 0}.empty-state p{font-size:13px;line-height:1.7}.empty-state button{border:1px solid var(--border);padding:8px 14px;border-radius:2px;background:var(--bg-secondary)}.tile-notice{position:absolute;z-index:700;top:74px;left:18px;right:18px;padding:10px;background:var(--bg);border:1px solid var(--border);font-size:12px}dialog{border:1px solid var(--border);border-radius:3px;background:var(--bg);color:var(--text);width:min(490px,calc(100% - 32px));padding:30px;max-height:calc(var(--viewport-height) * .85)}dialog::backdrop{background:#18181870}dialog h2{font-size:23px;margin:5px 0 17px}dialog p{font-size:14px;line-height:1.7;color:var(--text-secondary)}dialog a{font-size:14px}.photo-entry{display:flex;align-items:center;gap:10px;width:100%;padding:8px 0;margin:0 0 10px;border:0;border-top:1px solid var(--border);background:none;color:var(--accent);text-align:left;font-size:13px}.photo-entry img{width:64px;height:48px;object-fit:contain;background:var(--bg-secondary)}.photo-entry-count{margin-left:auto;white-space:nowrap}.photo-entry:hover{text-decoration:underline}.photo-dialog{width:min(680px,calc(100% - 32px));max-height:calc(var(--viewport-height) - 24px);padding:24px;overflow-y:auto}.photo-dialog h2{margin:0 44px 5px 0;overflow-wrap:anywhere}.photo-dialog #photo-reference{margin:0 0 16px;font-size:12px}.close-photos{position:absolute;top:8px;right:8px;width:44px;height:44px;padding:0;border:0;background:none;color:var(--text-secondary);font-size:26px}.photo-stage{position:relative}.photo-frame{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4 / 3;max-height:min(calc(var(--viewport-height) * .48),440px,calc(var(--viewport-height) - 260px));min-height:80px;background:var(--bg-secondary);touch-action:pan-y pinch-zoom}.photo-frame img{width:100%;height:100%;object-fit:contain}.photo-frame .photo-status{padding:20px 52px;margin:0;text-align:center;font-size:13px}.photo-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;padding:6px;border:0;border-radius:50%;background:#181818a6;background-clip:content-box;color:#fff}.photo-prev{left:4px}.photo-next{right:4px}.photo-dots{display:flex;flex-wrap:nowrap;justify-content:center;margin:4px 0}.photo-dots button{flex:0 0 24px;display:grid;place-items:center;width:24px;height:32px;padding:0;border:0;background:none}.photo-dots span{width:6px;height:6px;border:1px solid var(--text-secondary);border-radius:50%}.photo-dots [aria-current] span{background:var(--text);border-color:var(--text)}.photo-position{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.photo-credit{border-top:1px solid var(--border);overflow-wrap:anywhere}.photo-credit summary{display:flex;align-items:center;min-height:44px;padding:8px 0;color:var(--accent);font-size:11px;cursor:pointer;list-style:none}.photo-credit summary::-webkit-details-marker{display:none}.photo-credit summary:after{content:"+";margin-left:auto;padding-left:12px;flex:none;font-size:16px}.photo-credit[open]>summary:after,.photo-provenance[open]>summary:after{content:"−"}.photo-credit summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.photo-credit dl,.photo-credit a,.photo-record p{font-size:12px;line-height:1.6}.photo-attribution{display:grid;grid-template-columns:85px minmax(0,1fr);gap:10px 16px;margin:8px 0 16px}.photo-attribution dt{font-weight:500;color:var(--text-secondary)}.photo-attribution dd{margin:0}.photo-source-title{display:block;margin-top:3px;color:var(--text-secondary);font-size:11px}.photo-provenance{border-top:1px dashed var(--border)}.photo-record{margin:0 0 12px;color:var(--text-secondary)}.photo-record p{margin:0 0 12px}@media(hover:hover){.photo-arrow:hover{background-color:#181818e6}.photo-dots button:hover{background:var(--bg-secondary)}}.park-shortcuts{position:relative;display:flex;align-items:center;gap:8px;margin:-8px 0 16px}.park-shortcuts button{position:relative;border:1px solid var(--border);border-radius:3px;background:transparent;padding:3px 8px;min-height:28px;font-size:11px;color:var(--accent)}.park-shortcuts button:hover{background:var(--bg-secondary)}.park-help summary{position:relative;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--accent);cursor:pointer;list-style:none}.park-help summary::-webkit-details-marker{display:none}.park-help summary span{display:grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;font:500 12px/1 var(--font-sans)}.park-help summary:hover,.park-help[open] summary{background:var(--bg-secondary)}.park-help summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.park-help-content{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:3;padding:16px;border:1px solid var(--border);border-radius:3px;background:#fafafa;box-shadow:0 4px 12px #00000012}.park-help-content h2{font-size:15px}.park-help-content p{font-size:12px;line-height:1.6;margin:10px 0 0;color:var(--text-secondary)}.park-map-label{display:block;width:148px;min-height:40px;border:1px solid var(--accent);border-radius:3px;background:#f8f9f6f5;padding:4px 6px;text-align:center;box-shadow:0 2px 6px #1818181a}.park-map-label:hover{background:#fff}.park-map-label strong{display:block;font:600 12px/1.3 var(--font-serif);color:var(--accent)}.park-map-label span{display:block;font:10px/1.3 var(--font-sans);margin-top:1px}.park-dialog{width:min(590px,calc(100% - 24px));max-height:calc(var(--viewport-height) - 32px);padding:28px}.close-park{position:absolute;right:6px;top:6px;width:44px;height:44px;border:0;background:none;font-size:25px}.park-dialog .park-eyebrow{font:11px/1.6 var(--font-mono);color:var(--accent);margin:0 30px 8px 0}.park-dialog h2{margin:0 25px 4px 0;font-size:27px}.park-dialog .park-subtitle{margin:0 0 20px;font-size:12px}.park-stats{display:grid;grid-template-columns:1.2fr 1fr 1fr;border-block:1px solid var(--border);padding:14px 0;gap:12px}.park-stats strong{display:block;font:600 27px/1.2 var(--font-serif)}.park-stats span{display:block;font-size:11px;color:var(--text-secondary);margin-top:6px}.park-dialog .park-coverage{margin:16px 0 10px;font-size:13px}.park-dialog .park-filter-note{padding-left:12px;border-left:2px solid var(--accent);font-size:11px;margin:0 0 20px}.park-zones label{display:block;font-weight:600;font-size:14px;margin:0 0 8px}.park-zones select{width:100%;height:44px;border:1px solid var(--border);border-radius:3px;padding:0 10px;background:#fafafa;font:14px var(--font-sans);color:var(--text)}.park-zones select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#park-zone-detail{margin-top:12px;padding:16px;background:var(--bg-secondary);border-radius:3px}#park-zone-detail h3{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font:600 19px var(--font-serif);margin:0}#park-zone-detail h3 span{font:12px var(--font-sans);text-align:right}#park-zone-detail p{font-size:12px;line-height:1.5;margin:8px 0 14px}#park-zone-detail h4{font-size:11px;font-weight:500;margin:0 0 6px}.park-species{display:flex;flex-wrap:wrap;gap:4px 14px;list-style:none;padding:0;margin:0 0 14px;font-size:12px;font-style:italic}.park-dialog a{font-size:12px}.park-dialog .park-small,.park-dialog .park-boundary-note{font-size:11px;line-height:1.6}.park-more{border-top:1px solid var(--border);padding-bottom:4px}.park-more summary{cursor:pointer;padding:12px 0;font-size:13px;color:var(--accent)}.park-more p,.park-more li{font-size:12px}.park-species-counts{list-style:none;padding:0}.park-species-counts li{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.park-species-counts span{font-style:italic}.park-dialog .park-source{margin:14px 0}.park-dialog .park-boundary-note{border-top:1px solid var(--border);padding-top:14px;margin-bottom:0}.park-boundary-note a{font-size:inherit}@media(min-width:681px){:root{--ui-scale: .95;zoom:var(--ui-scale)}}@media(max-width:980px){.reset-button span{display:none}}@media(max-width:680px){.site-nav{gap:16px}.site-nav .wordmark{font-size:17px}.site-nav>div{gap:16px}.site-nav>div:before{left:-8px}.app{display:flex;flex-direction:column;width:auto;margin:0;border:0;min-height:calc(100dvh - 84px);height:auto}.sidebar{display:contents}.search-section{padding:13px 16px 14px;z-index:1001;background:var(--bg)}.search-section label{display:block;font-size:12px;margin-bottom:6px}.search-box{margin-top:0;height:44px}.search-box input{font-size:16px}#clear{min-width:44px;min-height:44px;margin-right:-11px}.near-button{top:12px;left:12px;min-height:36px;padding:0 10px;font-size:12px;gap:6px}.near-button span:first-child{font-size:16px}.near-button:after{content:"";position:absolute;inset:-4px 0}.hint{font-size:11px;margin:6px 0 0}#notice{font-size:11px;margin-top:9px}.suggestions{max-height:260px}.map-section{flex:none;height:clamp(280px,42svh,420px);min-height:280px;order:0;border-top:1px solid var(--border);border-bottom:1px solid #4a4a4a}.reset-button{top:12px;right:12px;min-width:44px;min-height:44px;justify-content:center}.map-legend{left:12px;bottom:22px;padding:6px 9px;font-size:10px}.results{order:1;flex:none;height:200px;padding:12px 16px 0;background:var(--bg);border-top:0}.results h2{font-size:17px}#summary{font-size:11px;margin:5px 0 8px}.tree-row{padding:10px 0}.data-footer{order:2;padding:9px 16px;justify-content:space-between;background:var(--bg)}.data-footer p,#about{font-size:10px}#about,.data-footer a{display:inline-flex;align-items:center;min-height:44px}.close-detail,#close-about{min-width:44px;min-height:44px}.detail{left:12px;bottom:20px;width:calc(100% - 66px);max-width:345px;padding:16px;max-height:calc(100% - 30px);overflow:auto}.detail h2{font-size:21px;margin-top:9px}.botanical{margin-bottom:10px;font-size:12px}.detail-meta{padding:9px 0}.tree-id{margin:10px 0}.detail-footnote{margin-top:5px}.leaflet-bottom.leaflet-right{right:3px;bottom:17px}.leaflet-control-scale{display:none}.leaflet-control-attribution{font-size:8px!important}.tile-notice{top:68px;left:12px;right:12px;font-size:11px}.photo-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:20px 16px}.photo-dialog h2{font-size:22px}.photo-dialog #photo-reference{margin-bottom:16px;font-size:11px}.photo-frame{max-height:min(58dvh,520px,calc(100dvh - 260px))}.park-shortcuts{margin:0 0 18px}.park-shortcuts button:after{content:"";position:absolute;inset:-8px 0}.park-help summary:after{content:"";position:absolute;inset:-8px}.park-dialog{padding:22px 18px}.park-dialog h2,.park-stats strong{font-size:24px}}.embed-mode{zoom:1;--ui-scale: 1;scrollbar-width:none}.embed-mode::-webkit-scrollbar{display:none}.embed-mode .site-nav,.embed-mode .site-footer{display:none}.embed-mode .app{width:100%;margin:0;height:100dvh;min-height:0;border:0}.embed-mode .results{display:flex;flex-direction:column;height:auto;min-height:0;overflow:visible}.embed-mode #tree-list{flex:1;min-height:0;overflow:auto}.embed-mode .search-section,.embed-mode .data-footer{flex-shrink:0}.embed-mode .analytics-shell{width:min(1160px,calc(100% - 32px))}.embed-mode dialog{top:var(--embed-visible-top, 0px);bottom:auto;margin:12px auto;max-height:calc(var(--embed-visible-height, 100dvh) - 24px)}@media(pointer:coarse){.embed-mode #map{touch-action:pan-y}}@media(max-width:680px){.embed-mode .app{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,32dvh) minmax(0,1fr) auto;grid-template-areas:"search" "map" "results" "attribution"}.embed-mode .search-section{grid-area:search}.embed-mode .map-section{grid-area:map;height:auto;min-height:0}.embed-mode .results{grid-area:results}.embed-mode .data-footer{grid-area:attribution}}
