/* Unified map editing: one Leaflet map and one lazy 3D renderer. */
.search-header{position:relative}
#fabObjectSpawner.active,#fabUnderground.active{background:#8d0811!important;box-shadow:0 0 0 1px #ff3b46 inset}
#gpsUnified3d{position:absolute;inset:0;z-index:325;background:#0b0d10;overflow:hidden;touch-action:none}
#gpsUnified3d[hidden],#gpsUnifiedPanel[hidden],#gpsOpenEditor[hidden]{display:none!important}
#gpsUnified3d canvas{display:block;width:100%;height:100%;touch-action:none}
#gpsUnified3d .gps-3d-controls{position:absolute;z-index:14;left:9px;top:10px;display:flex;gap:4px;align-items:center;pointer-events:auto}
#gpsUnified3d .gps-3d-controls button{background:rgba(10,10,12,.86);color:#fff;border:1px solid #b81a25;border-radius:7px;padding:7px 8px;font-size:11px;cursor:pointer}
#gps3dCrosshair{position:absolute;z-index:15;left:50%;top:50%;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#f02f41;box-shadow:0 0 0 2px #141414,0 1px 5px black;transform:translate(-50%,-50%);pointer-events:none}
#gpsUnifiedPanel{position:absolute;z-index:1850;top:9px;right:9px;bottom:9px;width:365px;display:flex;flex-direction:column;background:rgba(10,10,12,.96);border:1px solid #c51927;border-radius:11px;color:#f2f2f2;font:12px Arial,Helvetica,sans-serif;box-shadow:0 8px 28px #000a;overflow:hidden}
#gpsUnifiedPanel .gps-panel-header{flex:none;background:#29070a;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #c71b28}
#gpsUnifiedPanel .gps-panel-header button{width:28px;height:28px;border:1px solid #47474c;border-radius:7px;background:#242428;color:white;cursor:pointer}
#gpsUnifiedPanel .gps-panel-inner{padding:10px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b31825 #151515;min-height:0}
#gpsUnifiedPanel label{display:block;font-size:11px;color:#dadada;margin:7px 0}
#gpsUnifiedPanel label input:not([type=file]):not([type=checkbox]),#gpsUnifiedPanel input[type=search]{width:100%;height:30px;border:1px solid #414146;background:#0e0e10;color:#fff;border-radius:6px;padding:5px;min-width:0;box-sizing:border-box;outline:none;font-size:12px}
#gpsUnifiedPanel label input:focus,#gpsUnifiedPanel input:focus{border-color:#ff3344}
#gpsUnifiedPanel .gps-triplet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#gpsUnifiedPanel .gps-pair{display:flex;gap:6px;align-items:center;margin:7px 0}
#gpsUnifiedPanel .gps-pair strong{flex:1}
#gpsUnifiedPanel button{padding:7px 9px;background:#1b1b1e;color:#eee;border:1px solid #46464c;border-radius:7px;cursor:pointer;white-space:nowrap;font-size:11px}
#gpsUnifiedPanel button:hover{border-color:#ff3341}
#gpsUnifiedPanel .gps-upload{padding:9px 7px;background:#63060d;border:1px solid #ed202f;border-radius:7px;cursor:pointer;margin:0;flex:1;text-align:center;white-space:nowrap}
#gpsUnifiedPanel .gps-upload input{display:none}
#gpsUnifiedPanel .gps-record-list{height:118px;overflow:auto;border:1px solid #33343a;border-radius:7px;margin:6px 0;padding:3px;scrollbar-width:thin}
#gpsUnifiedPanel .gps-record-list button{display:block;width:100%;text-align:left;border:0;border-radius:3px;background:transparent;padding:6px;font-size:11px;overflow:hidden;text-overflow:ellipsis}
#gpsUnifiedPanel .gps-record-list button.selected{background:#830c15}
#gpsUnifiedPanel h4{font-size:12px;margin:12px 0 4px}
#gpsUnifiedPanel .gps-inline{display:flex;align-items:center;gap:7px}
#gpsUnifiedPanel .gps-info{color:#bdbdbd;font-size:10px;line-height:1.5;padding:8px 0;border-top:1px solid #29292d;margin-top:12px}
#gpsUnifiedPanel .gps-info summary{cursor:pointer;color:#ececec}
#gpsOpenEditor{position:absolute;z-index:1800;right:9px;top:9px;border:1px solid #ff2939;border-radius:7px;background:#8d0710;color:#fff;padding:8px 11px;cursor:pointer}
#gpsUnifiedMessage{position:absolute;z-index:1990;left:50%;bottom:54px;transform:translateX(-50%);padding:8px 14px;background:#111c;border:1px solid #c92330;color:#fff;border-radius:8px;font-size:12px;max-width:85%;pointer-events:none}
.gps-centre-handle{width:18px;height:18px;border:2px solid #ff4650;border-radius:50%;background:#76040a;color:#fff;text-align:center;line-height:13px;font-size:14px;cursor:move}
#gps3dContext{position:absolute;z-index:1750;min-width:120px;display:grid;gap:2px;background:#101013;border:1px solid #e12b38;border-radius:8px;padding:5px}
#gps3dContext[hidden]{display:none}
#gps3dContext button{background:#17171b;border:0;border-radius:5px;color:white;text-align:left;padding:8px;cursor:pointer}
#gps3dJoy{display:none}
#gps3dJoy[hidden]{display:none!important}
@media(max-width:760px){
 .map-page .search-header{height:49px!important;min-height:49px!important;display:flex!important;align-items:center!important;flex-wrap:nowrap!important;padding:2px 5px!important;gap:4px!important}
 .map-page .search-header .header-brand{width:auto!important;min-width:88px;flex:none!important;padding:0!important;margin:0!important}
 .map-page .search-header .header-banner{width:92px!important;max-width:92px!important;height:auto!important}
 .map-page .search-header #mapHelp{display:none!important}
 .map-page .search-header #mapsMenu{margin:0!important;width:28px!important;min-width:28px!important;height:29px!important;flex:none!important}
 .map-page .header-tools{display:none!important}
 .map-page .header-search{min-width:0!important;flex:1 1 40px!important;margin:0!important;width:auto!important}
 .map-page .header-search input{height:29px!important;min-width:0!important;padding:4px 5px!important;font-size:10px!important}
 .map-page #app{height:calc(100dvh - 49px)!important}
 .map-page .site-mobile-nav{position:fixed!important;top:55px!important;right:5px!important;z-index:2500!important}
 .map-page .site-mobile-nav summary{width:30px!important;height:29px!important;background:#20090c;border:1px solid #ff2636}
 .map-page .site-mobile-nav nav{width:188px!important;z-index:2600!important;top:33px!important;right:0!important;background:#100b0fe9!important}
 .map-page .site-mobile-nav nav button{display:block;width:100%;background:transparent;color:#fff;border:0;padding:9px;text-align:left;font-size:12px}
 #gpsUnifiedPanel{top:auto;bottom:5px;left:5px;right:5px;width:auto;max-height:min(40dvh,310px);border-radius:10px}
 #gpsUnifiedPanel .gps-panel-header{padding:5px 9px;height:32px;font-size:12px}
 #gpsUnifiedPanel .gps-panel-inner{padding:5px 8px}
 #gpsUnifiedPanel .gps-record-list{height:54px}
 #gpsUnifiedPanel label{margin:4px 0;font-size:10px}
 #gpsUnifiedPanel label input:not([type=file]):not([type=checkbox]),#gpsUnifiedPanel input[type=search]{height:26px;padding:3px;font-size:11px}
 #gpsUnifiedPanel .gps-pair{margin:4px 0}
 #gpsUnifiedPanel button{padding:4px 6px;font-size:10px}
 #gpsUnifiedPanel .gps-upload{padding:5px;font-size:10px}
 #gpsUnified3d .gps-3d-controls{top:5px;left:5px;right:38px;gap:3px;max-width:calc(100% - 45px);overflow:auto;scrollbar-width:none}
 #gpsUnified3d .gps-3d-controls button{padding:4px 6px;height:27px;white-space:nowrap;font-size:9px}
 #gpsUnified3d .gps-3d-controls #gpsTransformScale,#gpsUnified3d .gps-3d-controls #gpsTransformRotate{display:none}
 #gpsUnified3d .gps-3d-controls #gpsTerrain{font-size:9px;padding:3px 5px;background:#0c0c0ddd;opacity:.84}
 #gpsOpenEditor{top:35px;right:5px;padding:5px 8px;font-size:11px}
 #gps3dJoy{display:flex;position:absolute;z-index:1600;right:6px;bottom:8px;padding:5px;gap:5px;align-items:end;border:1px solid #8d2429;border-radius:16px;background:#0a0b0dab;backdrop-filter:blur(2px);touch-action:none}
 #gps3dJoy.collapsed{padding:3px}#gps3dJoy.collapsed .gps-stick,#gps3dJoy.collapsed .gps-updown{display:none}
 #gps3dJoy .gps-pad-hide{position:absolute;top:-23px;right:0;min-width:24px;height:22px;padding:0;background:#16151ad9;color:#f66;border:1px solid #a42331;border-radius:6px;cursor:pointer}
 #gps3dJoy .gps-stick{width:78px;height:78px;position:relative;touch-action:none;border:1px solid #ac2837;border-radius:50%;background:radial-gradient(circle,#82202248,#080a0b55)}
 #gps3dJoy .gps-stick:before{content:"";position:absolute;inset:17px;border:1px dashed #ffffff33;border-radius:50%}
 #gps3dJoy .gps-knob{position:absolute;left:50%;top:50%;width:25px;height:25px;border-radius:50%;background:#881720;border:2px solid #f23746;transform:translate(-50%,-50%);pointer-events:none}
 #gps3dJoy .gps-updown{display:grid;gap:5px}#gps3dJoy .gps-updown button{width:27px;height:33px;padding:0;border:1px solid #8c2531;border-radius:6px;background:#110c10c4;color:#fff;font-size:19px;touch-action:none}
 #app:has(#gpsUnifiedPanel:not([hidden])) #gps3dJoy{bottom:calc(min(40dvh,310px) + 13px)}
 .map-page #app>.heading-compass{top:7px!important;left:50%!important;min-width:142px!important;width:auto!important;gap:3px!important;padding:2px 5px!important;font-size:9px!important;pointer-events:none!important}
 .map-page #app>.heading-compass span{font-size:9px!important}
 #gpsUnifiedMessage{bottom:34px;font-size:10px}
}

/* Prevent two independent sets of map controls from drawing over the 3D scene. */
#app:has(#gpsUnified3d:not([hidden])) .float-stack,
#app:has(#gpsUnified3d:not([hidden])) .placement-flyout,
#app:has(#gpsUnified3d:not([hidden])) .item-editor,
#app:has(#gpsUnified3d:not([hidden])) .map-context-menu,
#app:has(#gpsUnified3d:not([hidden])) .leaflet-control-container{display:none!important}
@media(max-width:760px){
 .map-page .side-panel{max-height:45dvh!important;bottom:5px!important;top:auto!important}
 .map-page .side-panel .panel-body{font-size:11px!important}
 .map-page .side-panel button{max-height:33px!important;font-size:11px!important}
 .map-page #app .coords-pill{font-size:10px!important;bottom:5px!important}
}

/* Unified icon buttons: tooltips on hover, keyboard focus and native title fallback. */
.gps-icon-control{position:relative;display:inline-flex!important;align-items:center;justify-content:center;min-width:30px;min-height:30px;line-height:1;padding:5px!important;vertical-align:middle}
.gps-icon-control svg{width:17px;height:17px;flex:none;pointer-events:none}
@media(hover:hover) and (pointer:fine){.gps-icon-control[data-tip]:hover:after,.gps-icon-control[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;left:50%;top:calc(100% + 6px);transform:translateX(-50%);background:#151518;color:#fff;border:1px solid #b71a27;padding:5px 8px;border-radius:5px;white-space:nowrap;font-size:11px;z-index:3000;pointer-events:none;box-shadow:0 3px 12px #000b}}
#gpsUnifiedPanel select,#gpsUnifiedPanel select:focus{display:block;width:100%;height:30px;background:#111116;color:#eee;border:1px solid #4c4c54;border-radius:7px;padding:4px 8px;outline:none}
#gpsUnifiedPanel select:focus{border-color:#ed3444}
#gpsUnified3d .gps-3d-controls{max-width:calc(100% - 420px);flex-wrap:wrap}
#gpsUnified3d .gps-3d-controls .gps-icon-control{width:32px;height:32px;padding:6px!important}
@media(max-width:760px){#gpsUnified3d .gps-3d-controls{max-width:calc(100% - 42px);flex-wrap:nowrap;overflow-x:auto}#gpsUnified3d .gps-3d-controls .gps-icon-control{flex:none;width:29px;height:29px;min-width:29px;min-height:29px}#gpsUnifiedPanel select{height:26px;font-size:11px}#gpsUnifiedPanel .gps-pair .gps-icon-control{width:27px;height:27px;min-width:27px;min-height:27px}}

/* Unified header: respect the existing logo dimensions in flex layout.
   Older grid rules give .header-brand width:100%. Never carry that into a
   no-wrap flex row, or it pushes the map picker and all tools off-screen. */
.map-page .search-header{
 display:flex!important;align-items:center!important;flex-wrap:nowrap!important;
 gap:7px!important;max-width:100vw!important;box-sizing:border-box!important;
}
.map-page .search-header .header-brand{
 flex:0 1 250px!important;width:clamp(155px,18vw,250px)!important;
 max-width:250px!important;min-width:155px!important;height:auto!important;
 margin:0!important;
}
.map-page .search-header .header-banner{min-width:0!important}
.map-page .search-header #mapsMenu{
 flex:0 0 var(--control-size)!important;width:var(--control-size)!important;
 min-width:var(--control-size)!important;max-width:var(--control-size)!important;
 margin:0!important;
}
.map-page .search-header #gpsViewToggle{
 flex:0 0 var(--control-size)!important;width:var(--control-size)!important;
 height:var(--control-size)!important;min-width:var(--control-size)!important;
 padding:6px!important;display:grid!important;place-items:center;
 border:1px solid #ff0000;border-radius:8px;background:#171113;
 color:#ff0000;cursor:pointer;position:relative;z-index:6;
}
.map-page .search-header #gpsViewToggle svg{width:20px;height:20px;display:block}
.map-page .search-header #gpsViewToggle.active{background:#920b15;color:white;border-color:#ff0000}
.map-page .search-header #gpsViewToggle:focus-visible{outline:2px solid #fff;outline-offset:2px}
.map-page .search-header .header-search{
 flex:1 1 200px!important;width:auto!important;max-width:340px!important;
 min-width:70px!important;margin:0!important;
}
.map-page .search-header .header-tools{
 display:flex;flex:0 1 auto!important;min-width:0!important;
 margin:0 0 0 auto!important;gap:5px!important;
}
.map-page .search-header .header-tools .fab{
 flex:0 1 auto!important;min-width:var(--control-size);
}
@media(min-width:1051px){
 .map-page .search-header .header-tool-label{font-size:11px!important}
}
@media(min-width:701px) and (max-width:1050px){
 .map-page .search-header .header-brand{flex-basis:180px!important;min-width:145px!important}
 .map-page .search-header .header-tools .fab{width:var(--control-size);padding:0}
}
@media(max-width:760px){
 .map-page .search-header{
  height:49px!important;min-height:49px!important;padding:3px 5px!important;
  gap:4px!important;
 }
 .map-page .search-header .header-brand{
  width:92px!important;max-width:92px!important;min-width:92px!important;
  flex:0 0 92px!important;height:auto!important;
 }
 .map-page .search-header .header-banner{width:92px!important;max-width:92px!important}
 .map-page .search-header #mapHelp{display:none!important}
 .map-page .search-header #mapsMenu,
 .map-page .search-header #gpsViewToggle{
  flex:0 0 29px!important;width:29px!important;min-width:29px!important;
  max-width:29px!important;height:29px!important;
 }
 .map-page .search-header #gpsViewToggle{padding:4px!important}
 .map-page .search-header #gpsViewToggle svg{width:18px;height:18px}
 .map-page .search-header .header-search{
  flex:1 1 auto!important;min-width:0!important;max-width:none!important;
 }
 .map-page .search-header .header-tools{display:none!important}
}

/* The Leaflet map cannot remain visible on top of the shared Three.js view.
   Hide its whole DOM subtree, not just the zoom controls or tile pane. */
#app[data-gps-view="3d"] > #map{
 visibility:hidden!important;
 pointer-events:none!important;
}
#app[data-gps-view="2d"] > #gpsUnified3d{
 display:none!important;
}
#app[data-gps-view="3d"] > #gpsUnified3d:not([hidden]){
 display:block!important;
}

/* Final compact unified header and dark object-picker controls. */
.map-page .search-header{height:63px!important;min-height:63px!important;padding:5px 10px!important}
.map-page .search-header .fab,.map-page .search-header #mapsMenu,.map-page .search-header #gpsViewToggle{--control-size:35px;height:35px!important;min-height:35px!important;border-radius:8px!important}
.map-page .search-header .header-brand{flex-basis:215px!important;max-width:215px!important;min-width:150px!important}
.map-page .search-header .header-tool-label{font-size:10px!important}
.map-page .search-header .header-tools{gap:4px!important}
#gpsUnifiedPanel select{appearance:none!important;-webkit-appearance:none!important;background-color:#110c0f!important;color:#f3f3f3!important;border:1px solid #a32130!important;padding-right:29px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ff4b58' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 7px center!important;background-size:15px!important;background-repeat:no-repeat!important;cursor:pointer}
#gpsUnifiedPanel select option{background:#141116;color:#f4f4f4}
#gpsUnifiedPanel select:hover{border-color:#ff4b58!important}
#gpsUnified3d .gps-3d-controls{gap:4px!important}
#gpsUnified3d .gps-3d-controls button{font-size:10px!important}
#gpsUnified3d .gps-3d-controls #gpsTerrain{width:32px;height:32px;padding:6px!important}
@media(max-width:760px){
 .map-page .search-header{height:45px!important;min-height:45px!important;padding:3px 5px!important}
 .map-page .search-header .header-brand{flex:0 0 90px!important;width:90px!important;min-width:90px!important;max-width:90px!important}
 .map-page #app{height:calc(100dvh - 45px)!important}
 #gpsUnifiedPanel{max-height:36dvh!important}
 #gpsUnified3d .gps-3d-controls{max-width:calc(100% - 40px)!important}
 #gpsUnified3d .gps-3d-controls button{min-width:28px;height:28px;padding:5px!important}
 #app:has(#gpsUnifiedPanel:not([hidden])) #gps3dJoy{bottom:calc(36dvh + 12px)!important}
}
/* The map viewport must begin immediately under the condensed fixed header. */
body.map-page{--header-height:63px!important}
.map-page #app{top:63px!important;bottom:0!important;height:auto!important}
@media(max-width:760px){
 body.map-page{--header-height:45px!important}
 .map-page #app{top:45px!important;bottom:0!important;height:auto!important}
}

/* Additional native underground-trigger controls retained from the older editor. */
#gpsUnifiedPanel .gps-trigger-toggles{flex-wrap:wrap;gap:14px}
#gpsUnifiedPanel .gps-trigger-toggles label,#gpsUnifiedPanel .gps-inline{display:flex;align-items:center;gap:5px;margin:5px 0;white-space:normal}
#gpsUnifiedPanel .gps-inline input[type=checkbox]{accent-color:#e42633;flex:0 0 auto}
#gpsUnifiedPanel .gps-trigger-actions{display:flex;flex-wrap:wrap}
#gpsUnifiedPanel .gps-trigger-actions button{flex:1 1 auto}
#gpsUnifiedPanel .gps-raw-editor{padding-top:5px;margin:7px 0}
#gpsUnifiedPanel .gps-raw-editor textarea{width:100%;box-sizing:border-box;resize:vertical;background:#0b0b0e;color:#eee;border:1px solid #515158;border-radius:6px;font:11px/1.4 Consolas,monospace;padding:7px;margin:7px 0;min-height:100px}
#gpsUnifiedPanel button:disabled{opacity:.42;cursor:not-allowed}
/* Do not conceal Rotate and Scale on compact layouts. */
@media(max-width:760px){#gpsUnified3d .gps-3d-controls #gpsTransformScale,#gpsUnified3d .gps-3d-controls #gpsTransformRotate{display:grid;place-items:center}}


/* Custom 3D tool icons: separate navigation and edit actions (no text-only duplicate bar). */
.map-page #map .leaflet-control-zoom{display:none!important}
#gpsUnified3d .gps-3d-controls{left:10px!important;top:10px!important;right:auto!important;max-width:calc(100% - 30px)!important;display:flex!important;flex-wrap:nowrap!important;overflow:visible!important;gap:4px!important}
#gpsUnified3d .gps-3d-controls .gps-icon-control{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;color:#f22c37!important;padding:6px!important}
#gpsUnified3d .gps-3d-controls button.active{background:#860a13!important;color:#fff!important;border-color:#f33!important}
#gpsUnified3d #gpsTerrain{position:absolute;top:53px;left:10px;z-index:15;display:inline-flex;gap:8px;align-items:center;justify-content:space-between;width:auto!important;height:32px;padding:0 7px 0 9px!important;background:#0a0a0de9;color:#fff;border:1px solid #cd101b;border-radius:7px;cursor:pointer;font:600 11px/1 Arial,Helvetica,sans-serif;white-space:nowrap}
#gpsUnified3d #gpsTerrain svg{width:20px;height:20px;color:#ed1728;flex:none}
#gpsUnified3d .gps-edit-rail{position:absolute;top:96px;left:10px;z-index:15;display:flex;flex-direction:column;gap:5px;align-items:flex-start;pointer-events:auto}
#gpsUnified3d .gps-edit-rail .gps-labelled-icon{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:105px;height:31px;padding:0 5px 0 8px;border:0;background:none;color:#fff;text-align:left;font:11px Arial,Helvetica,sans-serif;cursor:pointer}
#gpsUnified3d .gps-edit-rail .gps-btn-caption{border:1px solid #c51220;border-radius:7px;background:#0b0b0edb;color:#fff;height:31px;min-width:58px;padding:0 9px;display:flex;align-items:center;justify-content:flex-start}
#gpsUnified3d .gps-edit-rail .gps-labelled-icon svg{width:31px;height:31px;box-sizing:border-box;padding:6px;color:#ef0e19;border:1px solid #c51220;border-radius:7px;background:#0b0b0edb;flex:none}
#gpsUnified3d .gps-edit-rail .gps-labelled-icon:hover .gps-btn-caption,#gpsUnified3d .gps-edit-rail .gps-labelled-icon:hover svg,#gpsUnified3d .gps-edit-rail .gps-labelled-icon:focus-visible .gps-btn-caption,#gpsUnified3d .gps-edit-rail .gps-labelled-icon:focus-visible svg{background:#531018}
#gpsUnified3d .gps-edit-rail .gps-labelled-icon.active .gps-btn-caption,#gpsUnified3d .gps-edit-rail .gps-labelled-icon.active svg{background:#920b15;color:#fff}
#gpsUnified3d .gps-edit-rail button[disabled]{opacity:.48;cursor:not-allowed}
#gpsUnified3d .gps-edit-rail button:not(.gps-labelled-icon){display:none!important}
.map-page .search-header #gpsViewToggle{width:105px!important;min-width:105px!important;max-width:105px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;padding:4px 5px 4px 9px!important;font:600 10px Arial,Helvetica,sans-serif!important;color:#fff!important}
.map-page .search-header #gpsViewToggle svg{color:#f10e1e!important;width:23px!important;height:23px!important;flex:none}
.map-page .search-header #gpsViewToggle.active{background:#8a0911!important}
.map-page .search-header #gpsViewToggle.active svg{color:#fff!important}
@media(max-width:760px){
 .map-page .search-header #gpsViewToggle{flex:0 0 29px!important;width:29px!important;min-width:29px!important;max-width:29px!important;height:29px!important;padding:4px!important;justify-content:center!important}
 .map-page .search-header #gpsViewToggle .gps-view-caption{display:none!important}
 .map-page .search-header #gpsViewToggle svg{width:19px!important;height:19px!important}
 #gpsUnified3d .gps-3d-controls{top:5px!important;left:5px!important;gap:3px!important;max-width:calc(100% - 10px)!important}
 #gpsUnified3d .gps-3d-controls .gps-icon-control{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;padding:5px!important}
 #gpsUnified3d #gpsTerrain{top:41px;left:5px;height:29px;padding:0 6px!important;font-size:10px}
 #gpsUnified3d .gps-edit-rail{top:75px;left:5px;gap:3px}
 #gpsUnified3d .gps-edit-rail .gps-labelled-icon{height:29px;min-width:94px;padding:0;gap:4px}
 #gpsUnified3d .gps-edit-rail .gps-btn-caption{min-width:55px;height:29px;padding:0 6px}
 #gpsUnified3d .gps-edit-rail .gps-labelled-icon svg{width:29px;height:29px}
}

/* Editor actions are contextual and do not clutter map-only 3D navigation. */
#app:not([data-gps-tool="objects"]):not([data-gps-tool="triggers"]) #gpsUnified3d .gps-edit-rail{display:none!important}


/* DayZ GPS mobile navigation, unified icon controls and contextual guide. */
.map-page #gpsViewToggle .gps-view-caption{display:none!important}
.map-page .search-header #gpsViewToggle{flex:0 0 35px!important;width:35px!important;min-width:35px!important;max-width:35px!important;padding:6px!important;justify-content:center!important}
.map-page .search-header #gpsViewToggle svg{width:22px!important;height:22px!important}
#gpsUnified3d .gps-3d-controls #gpsTerrain{
 position:static!important;top:auto!important;left:auto!important;z-index:auto!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 gap:0!important;width:32px!important;min-width:32px!important;max-width:32px!important;
 height:32px!important;min-height:32px!important;padding:5px!important;border:1px solid #d21d2b!important;
 border-radius:7px!important;background:#0a0a0de9!important;color:#f22c37!important;opacity:1!important;
 font-size:0!important;overflow:hidden!important;
}
#gpsUnified3d .gps-3d-controls #gpsTerrain svg{width:21px!important;height:21px!important;flex:0 0 21px!important;color:inherit!important}
#gpsUnified3d .gps-3d-controls #gpsTerrain[aria-pressed="true"]{background:#720d17!important;color:#fff!important}
.map-page #gpsUnified3d #gpsTerrain .gps-btn-caption{display:none!important}
.map-page .site-mobile-nav{display:none!important}
@media(max-width:760px){
 .map-page .search-header{height:76px!important;min-height:76px!important;display:flex!important;align-items:center!important;flex-wrap:wrap!important;
  padding:4px 6px!important;gap:3px 5px!important;position:relative!important;z-index:2400!important;align-content:space-between!important}
 .map-page .search-header .header-brand{order:0!important;flex:1 1 calc(100% - 46px)!important;max-width:none!important;min-width:0!important;width:auto!important;height:30px!important;
  margin:0!important;display:flex!important;align-items:center!important;gap:8px!important}
 .map-page .search-header .header-banner{width:126px!important;max-width:126px!important;height:27px!important;max-height:27px!important}
 .map-page .search-header #mapHelp{display:grid!important;place-items:center!important;width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;
  font-size:18px!important;color:#ff3446!important;background:#160c10!important;border:1px solid #c51d2c!important;border-radius:8px!important;cursor:pointer!important}
 .map-page .search-header #mapsMenu,.map-page .search-header #gpsViewToggle{order:2!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;max-width:34px!important;flex:0 0 34px!important;padding:5px!important}
 .map-page .search-header .header-search{order:3!important;flex:1 1 70px!important;width:auto!important;min-width:0!important;max-width:none!important;height:34px!important}
 .map-page .search-header #mapSearch{height:34px!important;min-height:34px!important;font-size:14px!important}
 .map-page .search-header .header-tools{display:none!important}
 .map-page .search-header .site-mobile-nav{display:block!important;position:relative!important;order:1!important;flex:0 0 34px!important;top:auto!important;right:auto!important;
  width:34px!important;height:30px!important;z-index:3000!important;margin-left:auto!important}
 .map-page .search-header .site-mobile-nav summary{display:grid!important;place-items:center!important;width:34px!important;height:30px!important;min-height:30px!important;
  background:#18090e!important;color:#fa3344!important;border:1px solid #d21b2c!important;border-radius:8px!important;list-style:none!important;cursor:pointer!important}
 .map-page .search-header .site-mobile-nav summary::-webkit-details-marker{display:none!important}
 .map-page .search-header .site-mobile-nav summary svg{width:20px!important;height:20px!important;stroke:currentColor;fill:none;stroke-width:2}
 .map-page .search-header .site-mobile-nav[open] summary{background:#850d18!important;color:white!important}
 .map-page .search-header .site-mobile-nav nav{box-sizing:border-box!important;display:none!important;position:fixed!important;
  top:76px!important;right:6px!important;left:auto!important;width:min(308px,calc(100vw - 12px))!important;max-height:min(70dvh,540px)!important;
  overflow:auto!important;overscroll-behavior:contain!important;z-index:3600!important;
  padding:9px!important;background:#0d0d12f7!important;border:1px solid #d51e30!important;
  border-radius:10px!important;box-shadow:0 15px 38px #000d!important}
 .map-page .search-header .site-mobile-nav[open] nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}
 .map-page .search-header .site-mobile-nav nav .gps-mobile-heading{grid-column:1/-1;color:#ff7582!important;font-size:11px!important;text-transform:uppercase!important;
  letter-spacing:.055em!important;border-bottom:1px solid #3c2229!important;padding:8px 5px 5px!important}
 .map-page .search-header .site-mobile-nav nav a,.map-page .search-header .site-mobile-nav nav button{box-sizing:border-box!important;display:flex!important;
  align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:38px!important;padding:7px 9px!important;
  border:1px solid #4b2630!important;border-radius:7px!important;background:#18161b!important;color:#f5f1f2!important;
  font:500 12px/1.25 Arial,sans-serif!important;text-decoration:none!important;text-align:left!important;white-space:normal!important}
 .map-page .search-header .site-mobile-nav nav button:nth-last-child(-n+5){grid-column:1/-1}
 .map-page .search-header .site-mobile-nav nav a:active,.map-page .search-header .site-mobile-nav nav button:active{background:#771320!important}
 .map-page .search-header .maps-card{position:relative!important;z-index:2700!important}
 .map-page .search-header .maps-card .maps-options{left:0!important;right:auto!important;top:100%!important;min-width:165px!important;width:175px!important;
  background:#121116!important;border:1px solid #b91e2d!important;border-radius:8px!important;box-shadow:0 6px 22px #000a!important;z-index:2800!important}
 .map-page .search-header .maps-card .radio-group{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;margin:0!important;padding:6px!important}
 .map-page .search-header .maps-card .radio-pill{font-size:12px!important;padding:5px!important;min-height:30px!important}
 .map-page #app{top:76px!important;height:calc(100dvh - 76px)!important;bottom:0!important}
 #gpsUnified3d .gps-3d-controls{top:6px!important;left:6px!important;right:auto!important;max-width:calc(100vw - 15px)!important;overflow-x:auto!important;overflow-y:hidden!important;gap:3px!important}
 #gpsUnified3d .gps-3d-controls .gps-icon-control,#gpsUnified3d .gps-3d-controls #gpsTerrain{flex:0 0 32px!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important}
 #gpsUnified3d .gps-edit-rail{top:49px!important;left:6px!important;gap:3px!important}
 .map-page #app>.heading-compass{top:6px!important;left:auto!important;right:7px!important;transform:none!important;width:137px!important;min-width:0!important;
  height:30px!important;max-width:calc(100vw - 235px)!important;overflow:hidden!important}
 #gpsUnified3d .gps-3d-controls{max-width:calc(100vw - 6px)!important}
 .map-page #gpsUnifiedPanel{max-height:min(58dvh,470px)!important;left:5px!important;right:5px!important;bottom:5px!important;top:auto!important;overflow:hidden!important}
 .map-page #gpsUnifiedPanel .gps-panel-inner{overflow-y:auto!important;max-height:calc(min(58dvh,470px) - 37px)!important;overscroll-behavior:contain!important}
 .map-page .help-card{position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:12px!important;
  width:auto!important;max-width:none!important;max-height:min(48dvh,370px)!important;overflow:auto!important;z-index:4101!important;padding:12px!important;
  box-shadow:0 10px 35px #000c!important}
 .map-page .help-pointer,.map-page .help-highlight{display:none!important}
}
@media(max-width:385px){
 .map-page .search-header .header-banner{width:109px!important;max-width:109px!important}
 .map-page .search-header #mapHelp{width:27px!important;min-width:27px!important}
 .map-page #app>.heading-compass{right:4px!important;max-width:calc(100vw - 231px)!important}
}
