/* R400: public /maps becomes a first-class, spacious World map rather than a
   small fallback grid beneath a large landing-page hero. No external UI libs. */
body[data-section="public"][data-active="maps"] .nv-public-page-hero{
 min-height:0!important;padding-top:80px;align-items:flex-start;
}
body[data-section="public"][data-active="maps"] .nv-public-page-stage{
 padding-top:20px;padding-bottom:22px;
}
body[data-section="public"][data-active="maps"] :is(.nv-public-page-icon,.nv-public-kicker,.nv-public-neon-logo){
 display:none!important;
}
body[data-section="public"][data-active="maps"] .nv-public-title{
 font-size:clamp(29px,2.5vw,48px);line-height:1.15;letter-spacing:-.02em;
}
body[data-section="public"][data-active="maps"] .nv-public-text{
 margin-top:8px;font-size:clamp(13px,.85vw,16px);line-height:1.45;
 max-width:1200px;
}
body[data-section="public"][data-active="maps"] .nv-public-map-actions{margin-top:12px;gap:9px}
body[data-section="public"][data-active="maps"] .nv-public-map-disclaimer{
 margin-top:10px;max-width:1500px;font-size:12px;line-height:1.45;color:#a8cadb;
}
body[data-section="public"][data-active="maps"] .nv-public-map-content{
 padding:8px 0 60px;min-height:70vh;
 background:linear-gradient(180deg,#071626,#061827 40%,#061524);
}
body[data-section="public"][data-active="maps"] .nv-public-map-content>.nv-home-container{
 width:min(calc(100% - 28px),2600px)!important;
}
body[data-section="public"][data-active="maps"] .nv-public-map-data{
 margin-top:0;min-width:0;padding:clamp(9px,1vw,22px);
 border:1px solid rgba(93,188,226,.38);border-radius:20px;
 background:linear-gradient(145deg,rgba(9,44,65,.97),rgba(5,24,40,.98));
 box-shadow:0 24px 52px rgba(0,0,0,.2);
}
body[data-section="public"][data-active="maps"] .nv-public-map-data>.nv-grid2d-wrap{
 display:flex;flex-direction:column;gap:10px;padding:clamp(12px,1.1vw,22px);
 margin:0 0 22px;border:1px solid rgba(127,220,248,.46);
 border-radius:18px;background:linear-gradient(135deg,#0c344d,#082437);
 box-shadow:0 12px 35px rgba(0,0,0,.2);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-heading{align-items:center}
body[data-section="public"][data-active="maps"] .nv-grid2d-heading h3{
 color:#f3fbff;font-weight:770;font-size:clamp(19px,1.5vw,28px);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-heading h3 i{color:#62dbfd}
body[data-section="public"][data-active="maps"] .nv-grid2d-heading p{
 font-size:clamp(12px,.85vw,14px);line-height:1.5;color:#bfd9e6;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-actions{
 gap:6px;background:rgba(2,19,30,.72);padding:7px;
 border:1px solid rgba(102,198,229,.3);border-radius:13px;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-actions button{
 min-height:46px;min-width:46px;padding:8px 12px;
 border-radius:10px;font-size:17px;border-color:rgba(123,212,242,.4);
 background:#123f5a;color:#f5fdff;box-shadow:none;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-actions button:hover{
 border-color:#74daf5;background:#1b6588;transform:translateY(-1px);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-actions button:disabled{transform:none}
body[data-section="public"][data-active="maps"] .nv-grid2d-actions .nv-map-tool-labeled{
 display:flex;align-items:center;gap:8px;font-size:12px;font-weight:720;
}
body[data-section="public"][data-active="maps"] .nv-map-tool-divider{
 align-self:stretch;width:1px;min-height:30px;background:rgba(142,216,242,.3);margin:2px 3px;
}
body[data-section="public"][data-active="maps"] .nv-map-zoom-level{
 min-width:65px;text-align:center;color:#dff8ff;
 font-size:13px;font-variant-numeric:tabular-nums;font-weight:800;
}
body[data-section="public"][data-active="maps"] .nv-map-meta{
 display:flex;align-items:center;justify-content:space-between;
 flex-wrap:wrap;gap:8px;margin:0;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-status{
 margin:0;color:#d2eefa;font-size:clamp(11px,.75vw,13px);
}
body[data-section="public"][data-active="maps"] .nv-map-help{
 font-size:12px;color:#b2d4e5;
}
body[data-section="public"][data-active="maps"] .nv-map-viewer{position:relative;min-width:0}
body[data-section="public"][data-active="maps"] .nv-public-map-data>.nv-grid2d-wrap .nv-grid2d-scroll{
 width:100%;height:clamp(560px,74svh,1080px);max-height:none!important;
 background:radial-gradient(ellipse at 50% 60%,#133f5b,#071c32);
 border:2px solid rgba(103,205,237,.52);border-radius:16px;
 scrollbar-color:#57c4e5 #0a2c43;cursor:grab;
 box-shadow:inset 0 0 30px rgba(0,0,0,.35);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-scroll:active{cursor:grabbing}
body[data-section="public"][data-active="maps"] .nv-grid2d-cells{
 --nv-grid-cell:96px;
 background:#123a56;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-cell{
 display:block;width:100%;height:100%;padding:0;appearance:none;
 border:1px solid rgba(106,171,213,.27);border-radius:0;
 text-align:left;cursor:inherit;
}
body[data-section="public"][data-active="maps"] button.nv-grid2d-cell{
 background:#125267;cursor:pointer;
}
body[data-section="public"][data-active="maps"] button.nv-grid2d-cell:hover,
body[data-section="public"][data-active="maps"] button.nv-grid2d-cell:focus-visible{
 outline:3px solid #bcfaff;outline-offset:-4px;z-index:2;
 border-color:#b7faff;filter:brightness(1.13);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-cell img{
 image-rendering:auto;object-fit:cover;user-select:none;pointer-events:none;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-cell span{
 left:0;right:0;bottom:0;max-height:65%;min-height:0;
 font-size:clamp(11px,1vw,15px);
 line-height:1.22;font-weight:760;padding:3px 5px 4px;
 /* R427: unshaded and unoutlined names over original map imagery. */
 color:#fff;text-shadow:none;box-shadow:none;filter:none;
 background:transparent;
 /* A name is informational; panning and selection belong to its tile. */
 pointer-events:none;user-select:none;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-preview{
 position:absolute;right:16px;top:16px;z-index:5;width:min(330px,calc(100% - 32px));
 display:flex;flex-direction:column;gap:7px;padding:18px 45px 18px 18px;
 border:1px solid #87ddf7;border-radius:14px;
 background:rgba(5,30,48,.96);color:#fff;
 box-shadow:0 12px 35px rgba(0,0,0,.45);
}
body[data-section="public"][data-active="maps"] .nv-grid2d-preview[hidden]{display:none!important}
body[data-section="public"][data-active="maps"] .nv-grid2d-preview strong{font-size:17px}
body[data-section="public"][data-active="maps"] .nv-grid2d-preview small{font-size:12px;color:#a9cfdf}
body[data-section="public"][data-active="maps"] .nv-map-preview-teleport{font-size:13px;color:#7ee6ff;text-decoration:underline}
body[data-section="public"][data-active="maps"] .nv-map-preview-close{
 position:absolute;right:10px;top:8px;min-width:32px;min-height:32px;
 border:0;border-radius:7px;color:#e7f8ff;background:#21516b;font-size:22px;
}
body[data-section="public"][data-active="maps"] .nv-map-zoom-hint{
 position:absolute;bottom:15px;left:15px;pointer-events:none;z-index:3;
 display:flex;align-items:center;gap:7px;padding:8px 11px;
 color:#e1faff;font-size:12px;border-radius:9px;
 background:rgba(2,23,39,.83);border:1px solid rgba(117,212,246,.34);
}
/* R429: static map credit, always anchored to the visible viewport corner.
   Never intercept tile clicks, wheel, drag or touch interactions. */
body[data-section="public"][data-active="maps"] .nv-map-attribution{
 position:absolute;right:16px;bottom:15px;z-index:4;
 max-width:calc(100% - 32px);
 padding:6px 10px;
 font-size:clamp(10px,.7vw,12px);font-weight:650;line-height:1.35;
 color:#eafaff;background:rgba(4,24,37,.73);
 border:1px solid rgba(130,201,226,.32);border-radius:7px;
 text-align:right;overflow-wrap:anywhere;
 pointer-events:none;user-select:none;
}
body[data-section="public"][data-active="maps"] .nv-grid2d-cells{
 margin-inline:auto;
}
body.nv-map-overlay-open{overflow:hidden!important}
body[data-section="public"][data-active="maps"] .nv-grid2d-wrap.nv-map-expanded{
 position:fixed!important;inset:12px!important;z-index:3000!important;
 display:flex!important;flex-direction:column!important;overflow:hidden!important;
 margin:0!important;max-width:none!important;max-height:none!important;
 padding:16px!important;background:#08243b!important;
}
body[data-section="public"][data-active="maps"] .nv-map-expanded .nv-map-viewer{
 flex:1 1 auto;min-height:0;
}
body[data-section="public"][data-active="maps"] .nv-map-expanded .nv-grid2d-scroll{
 height:100%!important;max-height:none!important;
}
@media(max-width:1199px){
 body[data-section="public"][data-active="maps"] .nv-grid2d-heading{align-items:stretch}
 body[data-section="public"][data-active="maps"] .nv-grid2d-actions{width:100%;justify-content:center;flex-wrap:wrap}
}
@media(max-width:767px){
 body[data-section="public"][data-active="maps"] .nv-public-page-hero{padding-top:68px!important}
 body[data-section="public"][data-active="maps"] .nv-public-page-stage{padding-top:13px;padding-bottom:15px}
 body[data-section="public"][data-active="maps"] .nv-public-title{font-size:29px}
 body[data-section="public"][data-active="maps"] .nv-public-text{margin-top:6px;font-size:13px}
 body[data-section="public"][data-active="maps"] .nv-public-map-disclaimer{font-size:11px}
 body[data-section="public"][data-active="maps"] .nv-public-map-content>.nv-home-container{width:calc(100% - 14px)!important}
 body[data-section="public"][data-active="maps"] .nv-public-map-data{padding:8px;border-radius:13px}
 body[data-section="public"][data-active="maps"] .nv-public-map-data>.nv-grid2d-wrap{padding:9px;gap:8px;border-radius:12px}
 body[data-section="public"][data-active="maps"] .nv-grid2d-heading h3{font-size:19px}
 body[data-section="public"][data-active="maps"] .nv-grid2d-heading p{font-size:12px}
 body[data-section="public"][data-active="maps"] .nv-grid2d-actions{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;
 }
 body[data-section="public"][data-active="maps"] .nv-grid2d-actions button{
  min-width:0;width:100%;min-height:43px;font-size:15px;padding:7px;
 }
 body[data-section="public"][data-active="maps"] .nv-grid2d-actions .nv-map-tool-labeled{
  grid-column:span 2;justify-content:center;font-size:12px;
 }
 body[data-section="public"][data-active="maps"] .nv-map-tool-divider{display:none}
 body[data-section="public"][data-active="maps"] .nv-map-zoom-level{min-width:0;align-self:center}
 body[data-section="public"][data-active="maps"] .nv-map-help{font-size:11px}
 body[data-section="public"][data-active="maps"] .nv-public-map-data>.nv-grid2d-wrap .nv-grid2d-scroll{
  height:clamp(520px,70svh,780px);max-height:none!important;
 }
 body[data-section="public"][data-active="maps"] .nv-map-zoom-hint{display:none}
 body[data-section="public"][data-active="maps"] .nv-map-attribution{
  right:8px;bottom:9px;padding:5px 7px;max-width:calc(100% - 16px);
  font-size:10px;
 }
 body[data-section="public"][data-active="maps"] .nv-grid2d-wrap.nv-map-expanded{inset:0!important;padding:10px!important}
 body[data-section="public"][data-active="maps"] .nv-map-expanded .nv-grid2d-scroll{
  height:100%!important;max-height:none!important;
 }
}
