/* Focus v4 — map-first layout with one obvious search path.
 * Progressive enhancement only: existing IDs, forms, data providers and map actions remain intact.
 */
:root{--sf-focus-ink:#183743;--sf-focus-muted:#6c828a;--sf-focus-teal:#087f78}
.sf-shell{grid-template-columns:62px minmax(280px,320px) minmax(0,1fr)}
.sf-left{border-right:1px solid #e5eeec}
.sf-left-head{padding:22px 20px 17px}
.sf-left-head h1{font-size:23px;line-height:1.2;letter-spacing:-.85px}
.sf-left-head .sf-brief-intro{font-size:12px;line-height:1.55;color:#6d8188;margin:8px 0 16px}
.sf-quickstart{display:grid;gap:9px;margin:16px 0 0}
.sf-quickstart button{width:100%;min-height:45px;padding:11px 13px;border:1px solid #dce7e4;border-radius:10px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;text-align:left;cursor:pointer}
.sf-quickstart-main{color:#fff;background:#087f78;border-color:#087f78!important;box-shadow:0 4px 12px #087f7823}
.sf-quickstart-main:hover{background:#086d68}
.sf-quickstart-alt{color:#25515b;background:#f3f8f6}
.sf-quickstart-alt:hover{background:#e9f4f0}
.sf-plan-info{font-size:10.5px;background:transparent;border:0;border-top:1px solid #e8efec;border-radius:0;margin:14px 0 0;padding:10px 0 0;color:#7c8f94}
.sf-plan-info summary{font-weight:650;color:#60818a}
.sf-main-tabs{margin-top:0}
.sf-tabview{padding:19px 19px 35px}
.sf-map-pane{min-width:0}
.sf-locator-dock{top:22px!important;left:50%!important;transform:translateX(-50%);right:auto!important;width:min(650px,calc(100% - 260px))!important;min-width:280px;box-shadow:0 10px 28px #153b4523;z-index:550}
.sf-locator-form{min-height:53px}
.sf-locator-helper{margin:0!important;padding:5px 13px 8px!important;font-size:10px!important;line-height:1.4!important;color:#637e86!important;max-height:34px;overflow:hidden}
.sf-locator-attribution{display:block!important;font-size:8px!important;line-height:1.35!important;margin:2px 12px 8px!important;color:#697f86!important;max-height:none!important;overflow:visible!important}
.sf-floating-top{top:96px!important;left:17px!important;max-width:calc(100% - 170px);gap:6px}
.sf-map-actions{top:96px!important;right:16px!important;gap:7px}
/* Desktop map tool buttons stay visible and open the hidden drawer. */
.sf-floating-top #filterToggle,.sf-floating-top #radarToggle,.sf-floating-top #resultsToggle,.sf-floating-top #savedToggle{display:inline-flex}
.sf-advanced-map-action{display:none!important}
.sf-floating-top #bristolJump{display:none}
.sf-map-actions #layerToggle{border-radius:9px;background:#fff}
.sf-map-actions .sf-basemap-switch{min-width:150px}
.sf-coverage-legend{top:auto!important;right:16px!important;bottom:47px!important;left:auto!important;max-width:240px!important;z-index:440!important;background:rgba(255,255,255,.93)!important;box-shadow:0 3px 13px #23464519!important;padding:8px 10px!important}
.sf-coverage-legend strong{font-size:10px!important;margin-bottom:1px!important}
.sf-coverage-legend div{font-size:9px;line-height:1.55}
.sf-coverage-legend p{display:none}
.sf-coverage-legend small{display:block;font-size:8px;line-height:1.3}
.sf-coverage-legend:focus-within p,.sf-coverage-legend:hover p{display:block}
.sf-map-credit{font-size:9px}
.sf-map-summary{max-width:400px}
.sf-map-drawer{box-shadow:-10px 0 35px #0d364220}
.sf-result-card{border-radius:12px}
@media(min-width:1051px){.sf-shell{grid-template-columns:62px minmax(280px,320px) minmax(0,1fr)}}
@media(min-width:801px) and (max-width:1050px){
 .sf-shell{grid-template-columns:55px minmax(270px,290px) minmax(0,1fr)}
 .sf-locator-dock{top:18px!important;width:min(520px,calc(100% - 165px))!important}
 .sf-floating-top{top:88px!important}
 .sf-map-actions{top:88px!important}
}
@media(max-width:800px){
 .sf-shell{display:block}
 .sf-left-head{padding:18px 16px}
 .sf-locator-dock{top:13px!important;left:12px!important;right:12px!important;transform:none;width:calc(100% - 24px)!important;min-width:0}
 .sf-locator-form{min-height:47px}
 .sf-map-actions{top:92px!important;right:10px!important}
 .sf-floating-top{top:92px!important;left:10px!important;max-width:calc(100% - 178px)}
 .sf-floating-top #filterToggle,.sf-floating-top #radarToggle,.sf-floating-top #resultsToggle,.sf-floating-top #savedToggle{display:none}
 .sf-coverage-legend{bottom:78px!important;right:9px!important;max-width:190px!important;padding:6px 8px!important}
 .sf-coverage-legend div{font-size:8px}
 .sf-coverage-legend strong{font-size:9px!important}
}

/* Map-first workspace — source panels open only when requested. */
@media(min-width:801px){
 .sf-shell.sf-map-only{grid-template-columns:62px minmax(0,1fr)}
 .sf-shell.sf-map-only .sf-left{display:none}
 .sf-shell.sf-map-only.sf-panel-open{grid-template-columns:62px minmax(280px,320px) minmax(0,1fr)}
 .sf-shell.sf-map-only.sf-panel-open .sf-left{display:flex}
 .sf-shell.sf-map-only .sf-floating-top #filterToggle,
 .sf-shell.sf-map-only .sf-floating-top #radarToggle,
 .sf-shell.sf-map-only .sf-floating-top #resultsToggle,
 .sf-shell.sf-map-only .sf-floating-top #savedToggle{display:inline-flex}
 .sf-shell.sf-map-only .sf-floating-top{top:100px!important;left:17px!important;max-width:calc(100% - 190px)}
 .sf-shell.sf-map-only .sf-map-actions{top:100px!important}
 .sf-shell.sf-map-only .sf-locator-dock{width:min(700px,calc(100% - 120px))!important}
 .sf-shell.sf-map-only .sf-mobile-close{display:flex;position:static;margin-left:auto}
}
.sf-shell.sf-map-only .sf-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 19px}
.sf-shell.sf-map-only .sf-panel-heading h2{font-size:16px;letter-spacing:-.3px;margin:0;color:#24414a}
.sf-shell.sf-map-only .sf-main-tabs{flex-shrink:0}
@media(max-width:800px){
 .sf-shell.sf-map-only{display:block}
 .sf-shell.sf-map-only .sf-left.mobile-closed{display:none}
 .sf-shell.sf-map-only .sf-left:not(.mobile-closed){display:flex}
}
