/* Map place search box (top of the map, every mode) + reference overlay toggle. S2: navy #1F2A44, copper #B87333 */
.ps-box{position:absolute;z-index:9;top:10px;left:50%;transform:translateX(-50%);width:min(440px,calc(100% - 180px));display:flex;align-items:center;
  background:#1F2A44f5;border:1px solid #B87333;border-radius:12px;box-shadow:0 3px 12px #0007;margin:0;padding:0 4px 0 0}
body.st-wm:not(.ga-mobile) .ps-box{left:calc(50% + (var(--stw-inset-l,0px) - var(--stw-inset-r,0px)) / 2)}
.ps-glass{color:#e7b98a;font-size:18px;padding:0 4px 0 10px;line-height:1}
.ps-box input{flex:1;min-width:0;min-height:42px;background:transparent;border:0;color:#fff;font:500 15px/1.2 system-ui,sans-serif;padding:0 6px;outline:none}
.ps-box input::placeholder{color:#b9c4d2}
.ps-box input::-webkit-search-cancel-button{display:none}
.ps-box:focus-within{outline:2px solid #e7b98a;outline-offset:1px}
.ps-clear{flex:none;min-height:34px;min-width:56px;border-radius:8px;border:1px solid #B87333;background:#2b3a5c;color:#fff;font:600 13px system-ui,sans-serif;cursor:pointer;touch-action:manipulation}
.ps-list{position:absolute;left:0;right:0;top:calc(100% + 6px);margin:0;padding:4px;list-style:none;background:#1F2A44;border:1px solid #B87333;border-radius:12px;
  box-shadow:0 8px 24px #000a;max-height:min(55vh,360px);overflow-y:auto;-webkit-overflow-scrolling:touch}
.ps-list[hidden]{display:none}
.ps-item{display:flex;gap:10px;align-items:center;min-height:48px;padding:6px 10px;border-radius:8px;color:#fff;cursor:pointer}
.ps-item.on,.ps-item:hover{background:#2e3f63}
.ps-item .ps-ic{color:#e7b98a;width:16px;text-align:center;flex:none}
.ps-item .ps-t{display:flex;flex-direction:column;min-width:0}
.ps-item b{font:600 14.5px/1.25 system-ui,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-item small{color:#b9c4d2;font:12px/1.3 system-ui,sans-serif}
.ps-note{padding:10px;color:#cfd8e3;font:13px/1.35 system-ui,sans-serif}
.ps-pin{display:flex;flex-direction:column;align-items:center;pointer-events:none}
.ps-pin-label{background:#1F2A44;color:#fff;border:1.5px solid #B87333;border-radius:8px;padding:3px 8px;font:700 13px/1.2 system-ui,sans-serif;white-space:nowrap;
  box-shadow:0 2px 6px #0008;margin-bottom:3px;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.ps-pin-dot{width:18px;height:18px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#B87333;border:2.5px solid #fff;box-shadow:0 2px 6px #0009;margin-bottom:4px}
/* phone: full width across the top of the map; zoom badge and county chip move below it */
body.ga-mobile .ps-box{left:10px;right:10px;width:auto;transform:none;top:10px}
body.ga-mobile.has-place-search #map .map-zoom-badge{top:62px}
body.ga-mobile.has-place-search .ac-chip{top:60px}
body.st-wm.has-place-search:not(.ga-mobile) #map .map-zoom-badge{top:62px!important}
@media print{.ps-box{display:none!important}}
/* Towns & roads toggle */
.ref-overlay-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;cursor:pointer;min-height:32px}
.ref-overlay-toggle input{width:18px;height:18px;accent-color:#B87333}
.ref-base-row{display:none;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 8px;padding:8px 10px;border:1px solid #2f4b61;border-radius:10px;background:#122636;color:#eaf1f6;font-size:13px}
.ref-base-row select{background:#0d2232;color:#eef4f7;border:1px solid #3b5a71;border-radius:7px;padding:8px;min-height:40px}
.ref-base-row .ref-base-pick{display:inline-flex;gap:8px;align-items:center}
body.ga-mobile .ref-base-row{display:flex}
body.ga-mobile .ref-base-row .ref-overlay-toggle{font-size:14px;min-height:44px}
/* keep the right-hand tool column below the search bar + county chip row */
body.ga-mobile.ga-explore.has-place-search #gaMobileMapHost .st-map-ctrls{max-height:calc(100% - var(--ga-sheet-peek,92px) - 118px)}
/* Classic-free (st-wm) desktop: the floating menubar fills the top 52px of the map, so sit below it; move the transient pan hint under the zoom badge so the two never overlap. */
body.st-wm:not(.ga-mobile) .ps-box{top:58px}
body.st-wm:not(.ga-mobile).has-place-search #map .map-hint{top:92px!important;left:calc(var(--stw-inset-l) + 10px)!important}
/* keep the 'Zoom in to see parcel lines' chip (state-layers.js) clear of the search box */
body.has-place-search .stl-zoom-hint{top:62px}
body.ga-mobile.has-place-search .stl-zoom-hint{top:98px;left:10px;transform:none;max-width:calc(100% - 84px)}
body.st-wm:not(.ga-mobile).has-place-search .stl-zoom-hint{top:110px}
/* searched-spot pin: tap the pin for the card (LOCATION.md) */
.ps-pin .ps-pin-dot{pointer-events:auto;cursor:pointer;padding:0;display:block}
.ps-pin .ps-pin-dot:focus-visible{outline:3px solid #f3d48b}
.ps-popup .maplibregl-popup-content{background:#1F2A44;color:#fff;border:1px solid #B87333;border-radius:12px;padding:10px 12px 8px;box-shadow:0 6px 20px #0009}
.ps-popup .maplibregl-popup-tip{border-top-color:#B87333!important;border-bottom-color:#B87333!important}
.ps-popup .maplibregl-popup-close-button{display:none}
.ps-card b{display:block;font:700 14px/1.25 system-ui,sans-serif;padding-right:4px}
.ps-card small{display:block;color:#b9c4d2;font:12px/1.3 system-ui,sans-serif}
.ps-card code{display:block;margin:4px 0 6px;color:#e7b98a;font:600 13px/1.3 ui-monospace,Menlo,monospace;user-select:all}
.ps-card-row{display:flex;flex-wrap:wrap;gap:6px}
.ps-card-row button,.ps-card-row a{min-height:38px;padding:0 10px;display:inline-flex;align-items:center;border-radius:8px;border:1px solid #B87333;background:#2b3a5c;color:#fff;
  font:600 13px system-ui,sans-serif;text-decoration:none;cursor:pointer;touch-action:manipulation}
.ps-card-row [data-a=save]{background:#B87333;border-color:#B87333}
.ps-card-msg{margin:4px 0 0;color:#cfe3c9;font:12px/1.3 system-ui,sans-serif;min-height:0}
.ps-card-msg:empty{display:none}
