
html,body,#map{height:100%;margin:0}
body{font-family:Arial,sans-serif;overflow:hidden}
#map{background:#111}
.panel{position:absolute;z-index:1000;top:10px;left:10px;width:350px;max-width:calc(100vw - 20px);
background:rgba(18,18,18,.95);color:#eee;padding:12px;border-radius:10px;box-shadow:0 2px 14px #0008;font-size:13px}
.panel h3{margin:0 0 7px;font-size:17px}
.panel button{border:0;border-radius:6px;padding:7px 9px;margin:3px 2px;cursor:pointer}
.small{font-size:11px;color:#bbb;line-height:1.35}
.status{margin-top:7px;padding:7px;background:#292929;border-radius:6px}
.legend{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;border:1px solid #fff;margin-right:3px}
.green{background:#587660}.blue{background:#4f7898}.red{background:#9b5353}.yellow{background:#a9944f}
.leaflet-popup-content{font-size:13px}
#coords{position:absolute;z-index:1000;right:10px;bottom:10px;background:#000c;color:#fff;padding:7px 9px;border-radius:6px;font:12px monospace}

.orange{background:#a66f45}.toolbar{display:flex;flex-wrap:wrap;gap:4px;margin:7px 0}.checks{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0}.checks label{background:#242424;padding:5px;border-radius:5px}.editor{position:absolute;z-index:1001;top:10px;right:10px;width:360px;max-height:calc(100vh - 55px);overflow:auto;background:rgba(18,18,18,.96);color:#eee;padding:12px;border-radius:10px;box-shadow:0 2px 14px #0008;font-size:12px}.editor input,.editor select,.editor textarea{width:100%;box-sizing:border-box;background:#292929;color:#fff;border:1px solid #555;border-radius:4px;padding:5px;margin:2px 0 6px}.editor button{border:0;border-radius:5px;padding:6px 8px;margin:2px;cursor:pointer}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px}.spawnCard{background:#252525;border:1px solid #444;border-radius:6px;padding:7px;margin:6px 0}.warn{color:#ffbf69}.ok{color:#7dff9b}.zoneLabel{background:#111d;color:#ffe44a;border:1px solid #ffe44a;padding:3px 6px;border-radius:5px;white-space:nowrap;font-weight:bold}.panel{width:390px}.leaflet-interactive{cursor:pointer}@media(max-width:900px){.editor{width:320px}.panel{width:330px}}

.section{margin:9px 0;padding:8px;background:#1d1f21;border:1px solid #34383c;border-radius:8px}.sectionTitle{font-weight:700;color:#d7d7d7;margin-bottom:5px}.toolbar select{background:#292d30;color:#eee;border:1px solid #4b5055;border-radius:6px;padding:6px}.primary{background:#3f586b;color:#fff}.accent{background:#665b3e;color:#fff}.danger{background:#633f3f;color:#fff}.selectRow{display:flex;align-items:center;gap:7px;margin:7px 0;padding:6px;background:#202326;border-radius:6px}.selectedMarker{filter:drop-shadow(0 0 4px #fff)}

#editorClose{position:sticky;top:0;float:right;z-index:3;background:#633f3f;color:#fff;border:1px solid #8a5b5b;border-radius:7px;padding:7px 10px;font-weight:700}.hudTab{position:absolute;z-index:1100;top:10px;left:10px;background:rgba(18,18,18,.92);color:#eee;border:1px solid #4b5055;border-radius:9px;padding:9px 12px;box-shadow:0 2px 12px #0008;display:none;font-weight:700;cursor:pointer}.panelToggle{float:right;background:#30383e!important;color:#eee!important;border:1px solid #4b5055!important}.zoneDraftVertex{background:#ffe44a;border:2px solid #1b1b1b;border-radius:50%;box-shadow:0 0 8px #ffe44a}.hiddenUI{display:none!important}@media(max-width:900px){.editor{top:8px;right:8px;left:8px;width:auto;max-height:calc(100vh - 70px);padding:10px}.panel{top:8px;left:8px;right:8px;width:auto;max-width:none;max-height:58vh;overflow:auto}.hudTab{top:8px;left:8px}.editor h3{padding-right:52px}}

.zoneNameLabel{background:rgba(10,12,15,.78)!important;border:1px solid rgba(255,228,74,.75)!important;border-radius:6px!important;box-shadow:0 1px 5px rgba(0,0,0,.7)!important;color:#fff!important;font-weight:700!important;font-size:13px!important;letter-spacing:.2px!important;padding:3px 7px!important;white-space:nowrap!important;pointer-events:none!important}.zoneNameLabel:before{display:none!important}

.leaflet-locationsPane-pane .leaflet-interactive{cursor:pointer}
.activePoint{filter:drop-shadow(0 0 7px #00e5ff)}.overlapNotice{margin:8px 0;padding:8px;border:1px solid #00e5ff;border-radius:6px;background:#16313a}.overlapNotice button{background:#28596a;color:#fff}.overlapNotice button:disabled{background:#13515b;outline:2px solid #00e5ff;cursor:default}
body:not(.editorMode) .editOnly{display:none!important}#editor{display:none}#loginModal[hidden]{display:none}#loginModal{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;background:#000b}#loginForm{width:min(360px,calc(100vw - 48px));padding:24px;border-radius:10px;background:#252b2d;color:#fff;box-shadow:0 8px 30px #0009}#loginForm h2{margin:0 0 16px}#loginForm label{display:block;margin:12px 0}#loginForm input{box-sizing:border-box;width:100%;margin-top:5px;padding:9px;background:#161b1d;color:#fff;border:1px solid #687277;border-radius:5px}#loginForm button{border:0;border-radius:6px;padding:8px 12px;cursor:pointer}#closeLogin{float:right;background:#633f3f;color:#fff}#loginError{color:#ffb6a8;min-height:18px}
