.nwastro-map-widget{--nw-bg:#101a2b;--nw-panel:#17243a;--nw-border:#33445c;--nw-muted:#b0bfd3;--nw-accent:#87c9ee;color:#f6f8ff;background:var(--nw-bg);border:1px solid var(--nw-border);border-radius:18px;overflow:hidden;font-family:inherit;box-shadow:0 12px 42px rgba(0,0,0,.15);max-width:1250px;margin:18px auto}.nwastro-map-widget *{box-sizing:border-box}.nwastro-hero{display:flex;align-items:center;justify-content:space-between;padding:30px 32px 24px;background:radial-gradient(ellipse at 85% 5%,#2b4a6b 0%,#17273e 48%,#101a2b 100%)}.nwastro-eyebrow{display:block;font-size:10px;letter-spacing:2px;color:#9fcee7;font-weight:800;margin-bottom:10px}.nwastro-hero h2{color:#fff;font-size:clamp(25px,3.2vw,40px);line-height:1.15;margin:0 0 10px;font-weight:750}.nwastro-hero h2 em{font-style:normal;color:#92d2f6}.nwastro-hero p{color:#c5d2e2;margin:0;font-size:14px}.nwastro-hero-icon{font-size:62px;color:#86c5ee;opacity:.65}.nwastro-toolbar{display:grid;grid-template-columns:minmax(145px,1.5fr) repeat(3,minmax(115px,1fr)) auto;gap:12px;padding:18px 22px;background:#142035;border-block:1px solid var(--nw-border);align-items:end}.nwastro-toolbar label{display:block;min-width:0;color:#dbe8f5;font-size:12px;font-weight:650}.nwastro-toolbar label span{display:block;margin-bottom:7px}.nwastro-toolbar input,.nwastro-toolbar select{width:100%;height:43px;border:1px solid #455770;border-radius:9px;padding:0 11px;background:#f9fbff;color:#142235;font-size:13px;outline-offset:2px}.nwastro-toolbar .nwastro-reset{height:43px;padding:0 15px;background:transparent;border:1px solid #6d859f;color:#d8e8f7;border-radius:9px;cursor:pointer;font-size:12px;white-space:nowrap}.nwastro-toolbar .nwastro-reset:hover{background:#263c57}.nwastro-main{display:grid;grid-template-columns:minmax(225px,31%) minmax(0,1fr);height:600px;min-height:400px}.nwastro-sidebar{background:#132137;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--nw-border)}.nwastro-sidebar-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:18px 16px;border-bottom:1px solid var(--nw-border);font-size:14px}.nwastro-count{color:#a6cde8;font-size:11px;white-space:nowrap}.nwastro-results{overflow-y:auto;flex:1;min-height:0}.nwastro-result{display:flex;gap:11px;width:100%;padding:13px;text-align:left;background:transparent;border:0;border-bottom:1px solid #2a3b50;color:#fff;cursor:pointer;align-items:center;font:inherit}.nwastro-result:hover,.nwastro-result.active{background:#223754}.nwastro-card-image,.nwastro-card-placeholder{width:70px;height:65px;object-fit:cover;border-radius:8px;flex-shrink:0}.nwastro-card-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#1d4e72,#314365);font-size:29px;color:#9ad5f5}.nwastro-result-copy{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.nwastro-result-copy strong{font-size:13px;color:#fff;line-height:1.25}.nwastro-result-copy small{font-size:11px;color:#bdcadb}.nwastro-result-meta{font-size:10px;color:#b9cfe1}.nwastro-bortle-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:3px}.nwastro-chevron{font-size:22px;color:#95bad3}.nwastro-empty{padding:20px;color:#ccd9e7;font-size:13px}.nwastro-map-area{position:relative;min-width:0}.nwastro-leaflet-map{height:100%;width:100%;z-index:1;background:#b5d6de}.nwastro-fit{position:absolute;z-index:500;bottom:22px;left:15px;border:1px solid #c6d7e4;background:#fff;color:#24364b;padding:9px 13px;border-radius:9px;box-shadow:0 2px 12px #0002;font-size:12px;font-weight:650;cursor:pointer}.nwastro-map-notice{padding:13px 20px 16px;color:#a8bdd2;font-size:12px;line-height:1.6;margin:0!important;background:#101a2b}.nwastro-map-notice strong{color:#d2e5f4}.nwastro-map-widget .leaflet-popup-content-wrapper{border-radius:12px;padding:0;overflow:hidden;box-shadow:0 12px 35px #0004}.nwastro-map-widget .leaflet-popup-content{margin:0;width:260px!important;max-height:350px;overflow:auto}.nwastro-popup{font-family:inherit;color:#1c3044}.nwastro-popup .nwastro-card-image,.nwastro-popup .nwastro-card-placeholder{width:100%;height:112px;border-radius:0}.nwastro-popup-body{padding:13px 15px}.nwastro-popup h3{margin:0 0 8px;color:#122238;font-size:17px;line-height:1.25}.nwastro-tags{display:flex;flex-wrap:wrap;gap:5px}.nwastro-tags span{font-size:10px;background:#eaf0f7;padding:4px 6px;border-radius:5px}.nwastro-tags .nwastro-verified{background:#ddf3e7;color:#176a44}.nwastro-tags .nwastro-candidate{background:#fff0d7;color:#855717}.nwastro-popup p{font-size:12px;line-height:1.5;margin:10px 0}.nwastro-popup .nwastro-access{color:#46586b}.nwastro-links{display:flex;flex-direction:column;gap:6px;margin-top:10px}.nwastro-links a{color:#11669a!important;font-size:12px;font-weight:650;text-decoration:none}.nwastro-links a:hover{text-decoration:underline}.nwastro-map-widget .leaflet-container a.leaflet-popup-close-button{color:#43566c;z-index:2}.nwastro-map-widget .leaflet-control-attribution{font-size:10px}
@media(max-width:1000px){.nwastro-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.nwastro-toolbar .nwastro-reset{width:max-content}.nwastro-main{grid-template-columns:35% 65%}}
@media(max-width:680px){.nwastro-hero{padding:23px 18px}.nwastro-hero-icon{display:none}.nwastro-toolbar{padding:14px;gap:10px}.nwastro-toolbar label{font-size:11px}.nwastro-main{display:flex;flex-direction:column;height:auto}.nwastro-sidebar{order:2;max-height:340px;border-right:0;border-top:1px solid var(--nw-border)}.nwastro-map-area{order:1;height:440px}.nwastro-map-notice{font-size:11px}.nwastro-result{padding:11px}.nwastro-fit{bottom:23px}}
@media(max-width:400px){.nwastro-toolbar{grid-template-columns:1fr}.nwastro-toolbar .nwastro-reset{width:100%}.nwastro-map-area{height:400px}}

/* v1.3: JS calculates true viewport centring from the rendered position,
   avoiding percentage offsets within WordPress's constrained block layouts. */
.nwastro-map-widget {
  position:relative !important;
  left:auto !important;
  right:auto !important;
  transform:none;
  width:min(1480px, calc(100vw - 40px)) !important;
  max-width:none !important;
  margin-top:20px;
  margin-bottom:24px;
}
@media(min-width:1100px){
 .nwastro-map-widget .nwastro-main{height:680px;grid-template-columns:minmax(310px,29%) minmax(0,1fr)}
}
@media(max-width:680px){
 .nwastro-map-widget{width:calc(100vw - 24px) !important}
}

/* v1.7: estimated Bortle colours and compact map legend */
.nwastro-bortle-legend{position:absolute;z-index:500;top:14px;right:14px;padding:11px 12px;background:rgba(16,26,43,.94);border:1px solid #64758b;border-radius:11px;color:#fff;box-shadow:0 4px 18px #0004;max-width:235px}
.nwastro-bortle-legend strong{font-size:12px;display:block;margin-bottom:8px;color:#fff}
.nwastro-bortle-scale{display:grid;grid-template-columns:repeat(9,1fr);gap:4px}
.nwastro-bortle-key{display:flex;flex-direction:column;align-items:center;font-size:10px;gap:3px;color:#f3f7ff}
.nwastro-bortle-key i{width:18px;height:13px;border-radius:4px;background:#7d8797;border:1px solid #fff5}
.nwastro-bortle-key[data-bortle="1"] i{background:#17253d}.nwastro-bortle-key[data-bortle="2"] i{background:#244f82}.nwastro-bortle-key[data-bortle="3"] i{background:#287ca0}.nwastro-bortle-key[data-bortle="4"] i{background:#2c9d87}.nwastro-bortle-key[data-bortle="5"] i{background:#91b64e}.nwastro-bortle-key[data-bortle="6"] i{background:#d4bd47}.nwastro-bortle-key[data-bortle="7"] i{background:#e5963d}.nwastro-bortle-key[data-bortle="8"] i{background:#d85c45}.nwastro-bortle-key[data-bortle="9"] i{background:#b93d63}
.nwastro-bortle-legend small{font-size:10px;color:#d5e3f1;display:block;margin-top:6px}
.nwastro-popup .nwastro-tags .nwastro-bortle-badge{background:var(--bortle-color);color:#fff;font-weight:750;text-shadow:0 1px 2px #0008}
@media(max-width:600px){.nwastro-bortle-legend{top:10px;right:10px;padding:8px;max-width:205px}.nwastro-bortle-key i{width:15px}}
