.geo-page-hero .page-title{align-items:flex-start;gap:24px}.geo-stats{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.geo-stats span{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.74);border:1px solid rgba(23,63,54,.12);padding:9px 12px;border-radius:14px;font-size:.86rem}.geo-stats b{font-size:1.08rem}.geo-section{padding-top:20px}.geo-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.geo-tabs a{padding:10px 14px;border-radius:12px;background:#fff;border:1px solid var(--line,#d9dfdc);font-weight:700}.geo-tabs a.active{background:#173f36;color:#fff;border-color:#173f36}.geo-principle{padding:12px 14px;border-radius:14px;margin-bottom:14px;line-height:1.9}.geo-principle.reference{background:#edf7f2;border:1px solid #b8d7c9}.geo-principle.research{background:#faf4e7;border:1px solid #e5cf9c}
.geo-workspace{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(340px,.75fr);gap:16px;align-items:start}.geo-map-column,.geo-side-column{background:#fff;border:1px solid var(--line,#d9dfdc);border-radius:18px;overflow:hidden;box-shadow:0 8px 30px rgba(30,46,40,.06)}.geo-map-column{min-width:0}.geo-side-column{position:sticky;top:82px;max-height:calc(100vh - 96px);display:flex;flex-direction:column;min-height:540px}.geo-workspace.is-editing{grid-template-columns:minmax(0,2.15fr) minmax(390px,.85fr)}.geo-workspace.is-editing .geo-side-column{height:calc(100vh - 96px);max-height:calc(100vh - 96px)}.geo-workspace.is-editing .geo-map{height:calc(100vh - 220px);min-height:590px}.geo-workspace.is-editing .geo-side-head [data-geo-new]{display:none}
.geo-map-toolbar,.geo-side-head{border-bottom:1px solid var(--line,#d9dfdc)}.geo-map-toolbar{padding:10px 12px;background:#fff}.geo-map-toolbar-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.geo-map-toolbar-main>div:first-child,.geo-side-head>div:first-child{display:flex;flex-direction:column;gap:3px}.geo-map-toolbar small,.geo-side-head small{color:#66736e}.geo-map-actions,.geo-detail-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.geo-side-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;flex:0 0 auto}.button.compact{padding:7px 11px;min-height:auto;font-size:.84rem}
.geo-basemap-switch{display:flex;border:1px solid #cdd8d3;border-radius:10px;overflow:hidden;background:#f4f7f5}.geo-basemap{border:0;background:transparent;padding:7px 11px;cursor:pointer;font-weight:700;color:#43534d}.geo-basemap+ .geo-basemap{border-right:1px solid #cdd8d3}.geo-basemap.active{background:#173f36;color:#fff}.geo-basemap:disabled{cursor:not-allowed;opacity:.48;background:#ecefed;color:#7c8782}.geo-basemap:disabled:hover{background:#ecefed}.geo-draw-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-top:9px;margin-top:9px;border-top:1px dashed #cad6d1}.geo-toolbar-label{font-size:.82rem;color:#67756f}.geo-tool{border:1px solid #c7d3ce;background:#f7faf8;color:#29483f;border-radius:10px;padding:7px 10px;cursor:pointer;font-weight:700}.geo-tool:hover,.geo-tool.active{background:#e8f4ee;border-color:#5e9a84}.geo-tool.active{box-shadow:inset 0 0 0 2px #5e9a84}.geo-tool.danger{color:#9a3229;border-color:#e4bdb9;background:#fff7f6}
.geo-map{height:650px;position:relative;background:#eef2ef}.geo-map.drawing{cursor:crosshair}.geo-map-loading,.geo-map-unavailable{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#5c6964;text-align:center;padding:24px}.geo-map-fallback{padding:10px 14px;background:#fff4db;border-top:1px solid #ecd59f;font-size:.88rem}.geo-geometry-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 14px;max-height:0;overflow:hidden;transition:.2s;background:#fff9ef;border-top:0 solid #ead1a5;font-size:.85rem}.geo-geometry-status:not(:empty){padding:10px 14px;max-height:100px;border-top-width:1px}.geo-geometry-status span{color:#6c6559}.geo-geometry-status .geo-boundary-warning{color:#8b3d27;font-weight:800;background:#fff1eb;border:1px solid #efc6b7;border-radius:9px;padding:4px 8px}.geo-selected-details{border-top:1px solid var(--line,#d9dfdc)}
.geo-detail-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:14px;padding:14px}.geo-detail-main{min-width:0}.geo-detail-title span{font-size:.78rem;color:#65736d}.geo-detail-title h3{margin:2px 0 8px}.geo-detail-main p{margin:6px 0;line-height:1.85}.geo-detail-actions{margin-top:12px}.geo-detail-actions code{direction:ltr;background:#f3f5f4;border-radius:8px;padding:6px 8px}.geo-google-frame{width:100%;height:220px;border:0;border-radius:12px;background:#f0f2f1}
.geo-browse-panel{min-height:0;display:flex;flex:1;flex-direction:column}.geo-filter-row{display:grid;grid-template-columns:1fr 145px;gap:8px;padding:10px;border-bottom:1px solid var(--line,#d9dfdc);flex:0 0 auto}.geo-filter-row input,.geo-filter-row select{min-width:0}.geo-list{padding:10px;overflow:auto;display:flex;flex-direction:column;gap:8px;min-height:0}.geo-card{border:1px solid var(--line,#d9dfdc);border-radius:14px;padding:11px 12px;cursor:pointer;transition:.18s;background:#fff}.geo-card:hover,.geo-card.selected{border-color:#5f917f;box-shadow:0 5px 18px rgba(23,63,54,.1);transform:translateY(-1px)}.geo-card.selected{background:#f1f8f5}.geo-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.geo-code{font-size:.77rem;color:#66736e;direction:ltr}.geo-card h3{margin:7px 0 4px;font-size:1rem}.geo-card p{margin:0 0 6px;color:#4f5f59;line-height:1.65;font-size:.88rem}.geo-card small{color:#72807a}.research-card{border-right:4px solid #c69a45}
.geo-editor-host{display:none;min-height:0;overflow:auto;flex:1}.geo-workspace.is-editing .geo-editor-host{display:block}.geo-editor-card{min-height:100%;display:flex;flex-direction:column;background:#f8fbf9}.geo-editor-head{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 15px 10px;background:#fff;border-bottom:1px solid var(--line,#d9dfdc);position:sticky;top:0;z-index:6}.geo-editor-head>div{display:flex;flex-direction:column;gap:3px}.geo-editor-head small{color:#697770}.geo-editor-progress{display:grid;grid-template-columns:1fr 35px 1fr;align-items:center;padding:12px 15px;background:#fff;border-bottom:1px solid #e0e6e3}.geo-editor-progress button{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#78847f;cursor:pointer;text-align:right}.geo-editor-progress button b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e7ece9;color:#65716c}.geo-editor-progress button.active{color:#173f36;font-weight:800}.geo-editor-progress button.active b,.geo-editor-progress button.done b{background:#173f36;color:#fff}.geo-editor-progress i{height:2px;background:#d8e0dc}.geo-step-panel{display:none;padding:14px 15px 90px}.geo-step-panel.active{display:block}.geo-step-panel label{display:flex;flex-direction:column;gap:5px;margin-bottom:10px;font-weight:600;font-size:.88rem}.geo-step-panel label small{font-weight:400;color:#6d7a75}.geo-step-panel input,.geo-step-panel select,.geo-step-panel textarea{font-weight:400}.geo-geometry-intro{padding:12px;border-radius:13px;background:#eef7f2;border:1px solid #c5ddd2;line-height:1.75}.geo-geometry-intro p{margin:5px 0 0;font-size:.87rem;color:#52645d}.geo-geometry-type{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.geo-geometry-type button{min-height:72px;border:1px solid #c8d4ce;background:#fff;border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:1.35rem;cursor:pointer}.geo-geometry-type button span{font-size:.88rem;font-weight:800}.geo-geometry-type button:hover,.geo-geometry-type button.active{border-color:#397d67;background:#edf7f2;box-shadow:inset 0 0 0 2px #79aa98}.geo-draft-summary{padding:12px;border-radius:12px;background:#fff;border:1px dashed #b5c7bf;line-height:1.7;color:#41534c}.geo-step-actions{display:flex;justify-content:space-between;gap:8px;margin-top:12px}.geo-coordinate-fallback{border:1px solid #ded7c6;border-radius:12px;padding:10px;margin-top:14px;background:#fffdf7}.geo-coordinate-fallback summary{cursor:pointer;font-weight:700}.geo-coordinate-fallback label{margin-top:10px}.geo-editor-footer{position:sticky;bottom:0;z-index:7;margin-top:auto;display:flex;justify-content:space-between;gap:10px;padding:11px 14px;background:rgba(255,255,255,.97);border-top:1px solid #d7dfdb;box-shadow:0 -7px 20px rgba(30,46,40,.08)}.geo-editor-footer>div{display:flex;gap:8px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.leaflet-container{font-family:inherit;direction:ltr}.leaflet-popup-content{direction:rtl;text-align:right}.geo-vertex-marker,.geo-midpoint-marker,.geo-center-marker{background:transparent;border:0}.geo-vertex-marker span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:#ad451d;border:3px solid #e4662a;font-weight:900;box-shadow:0 2px 7px rgba(0,0,0,.25)}.geo-vertex-marker.selected span{background:#173f36;color:#fff;border-color:#fff;outline:3px solid #173f36}.geo-midpoint-marker span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:#246c57;border:2px solid #4d9a80;font-weight:900;box-shadow:0 2px 6px rgba(0,0,0,.2)}.geo-center-marker span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#173f36;color:#fff;border:2px solid #fff;font-size:1.1rem;font-weight:900;box-shadow:0 3px 9px rgba(0,0,0,.3)}
.geo-workspace.is-fullscreen{position:fixed;inset:0;z-index:2000;background:#eef2ef;padding:10px;grid-template-columns:minmax(0,1fr) minmax(380px,460px);gap:10px}.geo-workspace.is-fullscreen .geo-map-column,.geo-workspace.is-fullscreen .geo-side-column{border-radius:12px}.geo-workspace.is-fullscreen .geo-side-column{position:static;height:calc(100vh - 20px);max-height:none}.geo-workspace.is-fullscreen .geo-map{height:calc(100vh - 150px);min-height:0}.geo-workspace.is-fullscreen .geo-map-column{height:calc(100vh - 20px);overflow:auto}.geo-fullscreen-open{overflow:hidden}.hidden{display:none!important}
@media(max-width:1100px){.geo-workspace,.geo-workspace.is-editing{grid-template-columns:1fr}.geo-side-column,.geo-workspace.is-editing .geo-side-column{position:static;height:auto;max-height:none;min-height:0}.geo-map{height:520px}.geo-workspace.is-editing .geo-map{height:62vh;min-height:470px}.geo-editor-host{max-height:none;overflow:visible}.geo-editor-head,.geo-editor-footer{position:relative}.geo-list{max-height:620px}.geo-detail-card{grid-template-columns:1fr}.geo-workspace.is-fullscreen{grid-template-columns:1fr;overflow:auto}.geo-workspace.is-fullscreen .geo-map-column,.geo-workspace.is-fullscreen .geo-side-column{height:auto}.geo-workspace.is-fullscreen .geo-map{height:70vh}}
@media(max-width:700px){.geo-map{height:430px}.geo-basemap-switch{overflow-x:auto;max-width:100%}.geo-basemap{white-space:nowrap}.geo-workspace.is-editing .geo-map{height:55vh;min-height:390px}.geo-map-toolbar-main,.geo-side-head{align-items:flex-start;flex-direction:column}.geo-map-actions{width:100%}.geo-basemap-switch{flex:1}.geo-basemap{flex:1}.geo-filter-row{grid-template-columns:1fr}.geo-detail-card{padding:10px}.geo-google-frame{height:200px}.geo-stats{justify-content:flex-start}.geo-page-hero .page-title{flex-direction:column}.geo-draw-toolbar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.geo-tool{white-space:nowrap}.geo-geometry-type{grid-template-columns:repeat(3,1fr)}.geo-step-actions{flex-direction:column}.geo-editor-footer{flex-direction:column-reverse}.geo-editor-footer>div{display:grid;grid-template-columns:1fr 1.3fr}.geo-editor-footer .button{width:100%}.geo-workspace.is-fullscreen{padding:4px}.geo-workspace.is-fullscreen .geo-map{height:63vh}}

/* v29: Google Maps and the expanded basemap selector */
.geo-basemap-switch{flex-wrap:wrap;overflow:visible;max-width:100%}
.geo-basemap{white-space:nowrap}
.geo-map .gm-style{font-family:inherit;direction:ltr}

/* v30: Google-first configuration and discoverable geography actions */
.geo-map-config-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 13px;border-bottom:1px solid var(--line,#d9dfdc);font-size:.82rem}.geo-map-config-banner strong{font-size:.84rem}.geo-map-config-banner span{color:#596961;flex:1}.geo-map-config-banner.success{background:#edf8f2;color:#245d49}.geo-map-config-banner.warning{background:#fff4df;color:#7a501d}.geo-map-config-banner .link-button{text-decoration:underline;font-weight:800}.geo-basemap.unavailable{border-style:dashed}.geo-card-actions{display:flex;gap:7px;margin-top:10px;padding-top:8px;border-top:1px solid #edf0ee}.geo-card-actions button,.geo-map-popup button{border:1px solid #bdcec7;background:#f5faf7;color:#245344;border-radius:8px;padding:5px 9px;cursor:pointer;font-weight:800;font-size:.75rem}.geo-card-actions button.danger,.geo-map-popup button.danger{border-color:#e1b7b2;background:#fff5f4;color:#98362d}.geo-map-popup{min-width:170px;display:grid;gap:6px;direction:rtl;text-align:right}.geo-map-popup>span{color:#65736d;font-size:.75rem}.geo-map-popup>div{display:flex;gap:6px;margin-top:3px}.geo-map-settings-dialog form{padding:22px;max-height:88vh;overflow:auto}.geo-map-key-status{display:grid;gap:3px;border-radius:12px;padding:11px 13px;margin-bottom:15px}.geo-map-key-status.configured{background:#edf8f2;color:#245d49}.geo-map-key-status.missing{background:#fff4df;color:#7a501d}.geo-map-key-status span{font-size:.78rem}.geo-detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.geo-detail-title-actions{display:flex;gap:6px}
@media(max-width:700px){.geo-map-config-banner{align-items:flex-start;flex-direction:column}.geo-map-config-banner span{flex:auto}.geo-card-actions button{flex:1}.geo-map-settings-dialog form{padding:15px}}
