@idmwx/idmui-gl4 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -96,20 +96,20 @@ const W = (a, e) => {
96
96
  activeWeatherLayers: [],
97
97
  activeWeatherLayersCollected: [],
98
98
  activeOtherLayers: [],
99
- autoActiveCache: "autoActiveCache",
100
- activeWeatherLayersCache: "activeWeatherLayersCache",
101
- activeOtherLayersCache: "activeOtherLayersCache",
102
- collectedLayerCache: "collectedLayerCache",
103
- sourceCache: "defaultSourceCache",
104
- windFeatherCollectedCache: "windFeatherCollectedCache",
105
- currentIsobandCollectedCache: "currentIsobandCollectedCache",
99
+ autoActiveCache: "autoActiveCacheGL4",
100
+ activeWeatherLayersCache: "activeWeatherLayersCacheGL4",
101
+ activeOtherLayersCache: "activeOtherLayersCacheGL4",
102
+ collectedLayerCache: "collectedLayerCacheGL4",
103
+ sourceCache: "defaultSourceCacheGL4",
104
+ windFeatherCollectedCache: "windFeatherCollectedCacheGL4",
105
+ currentIsobandCollectedCache: "currentIsobandCollectedCacheGL4",
106
106
  showCoord: !1,
107
107
  showMeasure: !1,
108
108
  showPoint: !1,
109
109
  show3d: !1,
110
110
  version: {
111
- v: "0.1.2",
112
- k: "glCacheVersion"
111
+ v: "0.0.1",
112
+ k: "cacheVersionGL4"
113
113
  },
114
114
  source: "Best Match",
115
115
  sourceList: [],
@@ -1,4 +1,4 @@
1
- (function(W,J){typeof exports=="object"&&typeof module<"u"?J(exports,require("@idm-plugin/tag"),require("moment"),require("axios"),require("moment-timezone"),require("vue"),require("@turf/turf"),require("@mapbox/sphericalmercator"),require("mapbox-gl"),require("@idm-plugin/geo"),require("@idm-plugin/meteo")):typeof define=="function"&&define.amd?define(["exports","@idm-plugin/tag","moment","axios","moment-timezone","vue","@turf/turf","@mapbox/sphericalmercator","mapbox-gl","@idm-plugin/geo","@idm-plugin/meteo"],J):(W=typeof globalThis<"u"?globalThis:W||self,J(W["idm-gl"]={},W["@idm-plugin/tag"],W.moment,W.axios,W["moment-timezone"],W.Vue,W["@turf/turf"],W["@mapbox/sphericalmercator"],W["mapbox-gl"],W["@idm-plugin/geo"],W["@idm-plugin/meteo"]))})(this,function(W,J,G,Ce,Me,t,Je,Ze,fe,j,De){"use strict";var To=Object.defineProperty;var Qo=(W,J,G)=>J in W?To(W,J,{enumerable:!0,configurable:!0,writable:!0,value:G}):W[J]=G;var Y=(W,J,G)=>(Qo(W,typeof J!="symbol"?J+"":J,G),G);function $e(i){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const a in i)if(a!=="default"){const o=Object.getOwnPropertyDescriptor(i,a);Object.defineProperty(e,a,o.get?o:{enumerable:!0,get:()=>i[a]})}}return e.default=i,Object.freeze(e)}const N=$e(Je),Vo="",Ho="",V=(i,e)=>{const a=i.__vccOpts||i;for(const[o,r]of e)a[o]=r;return a},et={name:"IdmGlLayer",props:{map:{type:Object},mapProjection:{type:String},gateway:{type:String},token:{type:String},top:{type:Number,default:60},layerToggle:{type:Boolean,default:!1},toggleVersion:{type:Number},isLogin:{type:Boolean,default:void 0},showWindFeather:{type:Boolean,default:void 0},showWindParticle:{type:Boolean,default:void 0},showCurrentIsoband:{type:Boolean,default:void 0},showCurrentParticle:{type:Boolean,default:void 0},forecastModel:{type:String}},emits:["weather","other","toggleWindParticle","toggleWindFeather","toggleCurrentParticle","toggleCurrentIsoband","toggleWindParticeVersion","toggleCurrentParticeVersion","coordinate","measure","point","3d","layerToggle","handleToggleVersion","login","forecastModel"],data(){return{autoActive:!0,layers:{weather:[...J.LayerHelper.WEATHER_LAYERS.filter(i=>!["swell-height","swell-direction","current-direction","current-speed"].includes(i.key))],other:[...J.LayerHelper.OTHER_LAYERS.filter(i=>i.enabled)]},activeWeatherLayers:[],activeWeatherLayersCollected:[],activeOtherLayers:[],autoActiveCache:"autoActiveCache",activeWeatherLayersCache:"activeWeatherLayersCache",activeOtherLayersCache:"activeOtherLayersCache",collectedLayerCache:"collectedLayerCache",sourceCache:"defaultSourceCache",windFeatherCollectedCache:"windFeatherCollectedCache",currentIsobandCollectedCache:"currentIsobandCollectedCache",showCoord:!1,showMeasure:!1,showPoint:!1,show3d:!1,version:{v:"0.1.2",k:"glCacheVersion"},source:"Best Match",sourceList:[],right:10,rampColorLayers:["visibility","precip3h","temp","water-temp","ice-thickness","ice-cover"],showWindParticleCollected:!1,showWindFeatherCollected:!0,showCurrentParticleCollected:!1,showCurrentIsobandCollected:!1}},computed:{computeLayerClass(){return function(i,e){var o;let a="layer flex-between";return e.some(r=>r.key===i.key||r.key==="sig-wave"&&i.key==="sig-wave-height")&&(a=a+" active"),(!i.enabled||(o=this.layers.weather)!=null&&o.some(r=>r.key===i.key)&&!this.autoActive||this.rampColorLayers.includes(i.key)&&this.mapProjection==="globe")&&(a=a+" disabled"),a}},hasCollectedLayers(){var i;return((i=this.layers.weather.filter(e=>e.collected))==null?void 0:i.length)>0},computeDateZ(){return function(i){var e;if(i){const a=G(i);return`${(e=a==null?void 0:a.utc())==null?void 0:e.format("MMM-DD/HHmm")}Z`}return"-"}},sourceCode(){var i;return(i=this.sourceList.find(e=>e.name===this.source))==null?void 0:i.code}},watch:{toggleVersion:{handler(){this.$nextTick(()=>{var i;this.right=(((i=document.getElementsByClassName("right-bar")[0])==null?void 0:i.clientWidth)||0)+10})}},source:{handler(i,e){i&&i!==e&&this.$emit("forecastModel",this.source),i&&e&&i!==e&&this.handleConfirm()}},activeWeatherLayers:{handler(i,e){this.autoActive&&(this.activeWeatherLayersCollected=this.activeWeatherLayers,localStorage.setItem(this.activeWeatherLayersCache,JSON.stringify(this.activeWeatherLayers)))}},showWindParticle:{handler(i,e){this.autoActive&&(this.showWindParticleCollected=this.showWindParticle)}},showWindFeather:{handler(i,e){this.autoActive&&(this.showWindFeatherCollected=this.showWindFeather,localStorage.setItem(this.windFeatherCollectedCache,this.showWindFeatherCollected))}},showCurrentParticle:{handler(i,e){this.autoActive&&(this.showCurrentParticleCollected=this.showCurrentParticle)}},showCurrentIsoband:{handler(i,e){this.autoActive&&(this.showCurrentIsobandCollected=this.showCurrentIsoband,localStorage.setItem(this.currentIsobandCollectedCache,this.showCurrentIsobandCollected))}}},async mounted(){await this.fetchMeteoSource(),this.fetchCache(),this.handleConfirm()},methods:{async fetchMeteoSource(){var e;this.sourceList=[];let i=await Ce.get(`${this.gateway}/api/arc/meteo2/models`,{headers:{Authorization:this.token}});(i==null?void 0:i.data.code)===0&&(this.sourceList=(e=i==null?void 0:i.data.data)==null?void 0:e.weather)},fetchCache(){const i=localStorage.getItem(this.version.k);this.version.v!==i&&(localStorage.removeItem(this.autoActiveCache),localStorage.removeItem(this.activeWeatherLayersCache),localStorage.removeItem(this.collectedLayerCache),localStorage.removeItem(this.activeOtherLayersCache),localStorage.removeItem(this.windFeatherCollectedCache),localStorage.removeItem(this.currentIsobandCollectedCache),localStorage.setItem(this.version.k,this.version.v));let e=localStorage.getItem(this.autoActiveCache);this.autoActive=e!=="false",e=localStorage.getItem(this.collectedLayerCache);let a=JSON.parse(e||'[{"weight": 16, "name": "Sig Waves", "key": "sig-wave-height", "collected": true},{"weight": 1, "name": "Wind", "key": "wind", "collected": true},{"weight": 96, "name": "Current", "key": "current", "collected": true},{"weight": 256,"name": "Tropicals","key": "tropicals", "collected": true}]');this.layers.weather.forEach(o=>{o.collected=!!a.some(r=>r.key===o.key&&r.collected)}),e=localStorage.getItem(this.activeWeatherLayersCache),e||localStorage.setItem(this.activeWeatherLayersCache,JSON.stringify([{weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1},{weight:16,name:"Sig Waves",key:"sig-wave-height",enabled:!0,type:"jpg"},{weight:256,name:"Tropicals",key:"tropicals",enabled:!0,type:"json"}])),e=localStorage.getItem(this.activeWeatherLayersCache),a=JSON.parse(e),this.autoActive?this.activeWeatherLayers=[...a]:this.activeWeatherLayersCollected=[...a],a.some(o=>o.key==="wind"&&o.particle)&&(this.$emit("toggleWindParticle",!0),this.showWindParticleCollected=!0),a.some(o=>o.key==="current"&&o.particle)&&(this.$emit("toggleCurrentParticle",!0),this.showCurrentParticleCollected=!0),this.showWindFeatherCollected=JSON.parse(localStorage.getItem(this.windFeatherCollectedCache))?JSON.parse(localStorage.getItem(this.windFeatherCollectedCache)):this.showWindFeatherCollected,this.showCurrentIsobandCollected=JSON.parse(localStorage.getItem(this.currentIsobandCollectedCache))?JSON.parse(localStorage.getItem(this.currentIsobandCollectedCache)):this.showCurrentIsobandCollected,this.autoActive&&(this.$emit("toggleWindFeather",this.showWindFeatherCollected),this.$emit("toggleCurrentIsoband",this.showCurrentIsobandCollected)),a.some(o=>o.key==="wind"&&!o.particle&&!this.showWindFeatherCollected)&&(a=a.filter(o=>o.key!=="wind")),a.some(o=>o.key==="current"&&!o.particle&&!this.showCurrentIsobandCollected)&&(a=a.filter(o=>o.key!=="current")),e=localStorage.getItem(this.activeOtherLayersCache),a=JSON.parse(e||'[{"weight":4,"name":"ECA Zones","key":"eca-zones","enabled":true,"type":"json"}, {"weight": 2048,"name": "ENC","key": "enc","h5": true,"enabled": true,"type": "origin"}]'),this.activeOtherLayers=a,e=localStorage.getItem(this.sourceCache),this.source=this.forecastModel?this.forecastModel:e?e==="CMEMS"?"ECMWF":e:this.source,this.$emit("forecastModel",this.source)},handleConfirm(){this.autoActive&&this.$emit("weather",JSON.parse(localStorage.getItem(this.activeWeatherLayersCache)),this.sourceCode),this.$emit("other",this.activeOtherLayers),localStorage.setItem(this.autoActiveCache,this.autoActive),localStorage.setItem(this.sourceCache,this.source)},handleClickLayer(i){i.key==="sig-wave-height"&&this.activeWeatherLayers.some(e=>e.key==="sig-wave")?this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave-height"&&e.key!=="sig-wave"):this.handleWeatherLayerPick(i)},handleWeatherLayerPick(i){if(this.activeWeatherLayers=JSON.parse(localStorage.getItem(this.activeWeatherLayersCache)),this.rampColorLayers.includes(i.key)&&this.mapProjection==="globe"||!this.autoActive)return!1;(i.key==="wind"&&!this.showWindFeather||i.key==="current"&&!this.showCurrentIsoband)&&(i.particle=!0),this.activeWeatherLayers.some(e=>e.key===i.key)?this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!==i.key):this.activeWeatherLayers.length<6&&i.enabled&&(["png","jpg"].includes(i.type)?(this.activeWeatherLayers.forEach(e=>{(e.key==="wind"&&this.showWindFeather||i.key==="current"&&this.showCurrentIsoband)&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))):i.key==="wind"?(this.activeWeatherLayers.forEach(e=>{e.key==="current"&&this.showCurrentIsoband&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))):i.key==="current"&&(this.activeWeatherLayers.forEach(e=>{e.key==="wind"&&this.showWindFeather&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))),this.activeWeatherLayers.push(i)),i.key==="sig-wave"&&(this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave-height")),i.key==="sig-wave-height"&&(this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave")),this.$emit("weather",this.activeWeatherLayers,this.sourceCode)},handleWeatherLayerCollect(i){var e;if(!this.autoActive)return!1;!i.collected&&((e=this.layers.weather.filter(a=>a.collected))==null?void 0:e.length)>=6&&(this.layers.weather.filter(a=>a.collected)[0].collected=!1),i.collected=!i.collected,localStorage.setItem(this.collectedLayerCache,JSON.stringify(this.layers.weather)),this.$emit("handleToggleVersion")},handleToggleWindParticle(){!this.showWindFeather&&this.showWindParticle?this.handleWeatherLayerPick({weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1}):(this.showCurrentParticle&&(this.$emit("toggleCurrentParticle",!1),this.showCurrentIsoband||(this.activeWeatherLayers=this.activeWeatherLayers.filter(i=>i.key!=="current"))),this.$emit("toggleWindParticle",!this.showWindParticle),this.$emit("toggleWindParticeVersion"))},handleToggleWindFeather(){this.showWindFeather&&!this.showWindParticle&&this.handleWeatherLayerPick({weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1}),this.$emit("toggleWindFeather",!this.showWindFeather)},handleToggleCurrentParticle(){!this.showCurrentIsoband&&this.showCurrentParticle?this.handleWeatherLayerPick({weight:96,name:"Current",key:"current",enabled:!0,type:"json",particle:!1}):(this.showWindParticle&&(this.$emit("toggleWindParticle",!1),this.showWindFeather||(this.activeWeatherLayers=this.activeWeatherLayers.filter(i=>i.key!=="wind"))),this.$emit("toggleCurrentParticle",!this.showCurrentParticle),this.$emit("toggleCurrentParticeVersion"))},handleToggleCurrentIsoband(){this.showCurrentIsoband&&!this.showCurrentParticle&&this.handleWeatherLayerPick({weight:96,name:"Current",key:"current",enabled:!0,type:"json",particle:!1}),this.$emit("toggleCurrentIsoband",!this.showCurrentIsoband)},handleToggleSigWaveRamp(){this.handleWeatherLayerPick({weight:4194304,name:"Sig Waves",key:"sig-wave",enabled:!0,type:"jpg"})},handleToggleSigWaveHeight(){this.handleWeatherLayerPick({weight:16,name:"Sig Waves",key:"sig-wave-height",enabled:!0,type:"json"})},handleOtherLayerPick(i){this.activeOtherLayers.some(e=>e.key===i.key)?this.activeOtherLayers=this.activeOtherLayers.filter(e=>e.key!==i.key):i.enabled&&this.activeOtherLayers.push(i),localStorage.setItem(this.activeOtherLayersCache,JSON.stringify(this.activeOtherLayers)),this.$emit("other",this.activeOtherLayers)},handleMenuToggle(){this.$emit("layerToggle",!this.layerToggle)},toggleAutoActive(){this.autoActive=!this.autoActive,localStorage.setItem(this.autoActiveCache,this.autoActive),this.autoActive?(this.$emit("weather",this.activeWeatherLayersCollected,this.sourceCode),this.$emit("toggleWindFeather",localStorage.getItem(this.windFeatherCollectedCache)==="true"),this.$emit("toggleCurrentIsoband",localStorage.getItem(this.currentIsobandCollectedCache)==="true")):(this.$emit("weather",[],this.sourceCode),this.$emit("toggleWindFeather",!1),this.$emit("toggleCurrentIsoband",!1))},handleCoordToggle(){this.showCoord=!this.showCoord,this.$emit("coordinate",this.showCoord)},handlePointToggle(){this.isLogin?(this.showPoint=!this.showPoint,this.$emit("point",this.showPoint)):this.$emit("login")},handleMeasureToggle(){this.showMeasure=!this.showMeasure,this.$emit("measure",this.showMeasure)},handle3DToggle(){this.show3d=!this.show3d,this.$emit("3d",this.show3d)}}},tt={class:"idm-gl4-layer"},at={class:"bar-item layer-bars"},it={class:"bar-item tool-bars"},rt={class:"flex-between"},ot={key:0,class:"iconfont active"},st={key:1,class:"iconfont"},nt=["onClick"],lt=["onClick"],ct={key:0,class:"flex-start"},ht={key:1,class:"flex-start"},dt={key:2,class:"flex-start"},mt={class:"header-box flex-between"},pt={class:"weather-layers card-bg"},gt={class:"layers-title flex-between"},yt={key:0,class:"iconfont active"},ut={key:1,class:"iconfont"},ft={class:"layers-body"},At={class:"flex-start"},wt=["onClick"],bt=["onClick"],Lt={key:0,class:"flex-start"},Ct={key:1,class:"flex-start"},vt={key:2,class:"flex-start"},xt=["onClick"],Et={key:0,class:"iconfont bookmark-icon active"},Bt={key:1,class:"iconfont bookmark-icon inactive"},_t={class:"other-layers card-bg"},kt={class:"layers-body"},It=["onClick"],Dt={class:"flex-start"},zt={class:"switch flex-center"},Nt={key:0,class:"iconfont active"},Pt={key:1,class:"iconfont"},Mt={class:"source-layers card-bg"},St={class:"layers-body"},Tt={key:0},Qt={key:1,class:"radio-tip"},Vt={key:2,class:"radio-tip"};function Ht(i,e,a,o,r,s){const n=t.resolveComponent("ElTooltip"),l=t.resolveComponent("ElRadio"),h=t.resolveComponent("ElRadioGroup"),m=t.resolveComponent("ElScrollbar");return t.openBlock(),t.createElementBlock("div",tt,[t.createElementVNode("div",{class:"menu-bar-box",style:t.normalizeStyle({top:a.top+10+"px",right:r.right+"px"})},[t.createElementVNode("div",at,[t.createVNode(n,{placement:"left",effect:"light",content:"Menu","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(a.layerToggle?"menu-icon active":"menu-icon"),onClick:e[0]||(e[0]=(...c)=>s.handleMenuToggle&&s.handleMenuToggle(...c))},e[21]||(e[21]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1})])],4),t.createElementVNode("div",{class:"menu-bar-box",style:t.normalizeStyle({top:a.top+160+"px",right:r.right+"px"})},[t.createElementVNode("div",it,[t.createVNode(n,{placement:"left",effect:"light",content:"Measure","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showMeasure?"menu-icon active":"menu-icon"),onClick:e[1]||(e[1]=(...c)=>s.handleMeasureToggle&&s.handleMeasureToggle(...c))},e[22]||(e[22]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"Point Meteo","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showPoint?"menu-icon active":"menu-icon"),onClick:e[2]||(e[2]=(...c)=>s.handlePointToggle&&s.handlePointToggle(...c))},e[23]||(e[23]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"Grid","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showCoord?"menu-icon active":"menu-icon"),onClick:e[3]||(e[3]=(...c)=>s.handleCoordToggle&&s.handleCoordToggle(...c))},e[24]||(e[24]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"3D","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.show3d?"menu-icon active":"menu-icon"),onClick:e[4]||(e[4]=(...c)=>s.handle3DToggle&&s.handle3DToggle(...c))},e[25]||(e[25]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1})])],4),s.hasCollectedLayers?(t.openBlock(),t.createElementBlock("div",{key:0,class:"active-layers",style:t.normalizeStyle({right:r.right+"px",bottom:"100px"})},[t.createElementVNode("div",rt,[e[26]||(e[26]=t.createElementVNode("div",{style:{margin:"2px 5px"}},"Weather Layers",-1)),t.createElementVNode("div",{class:"switch flex-center",style:{"font-size":"28px","margin-right":"0"},onClick:e[5]||(e[5]=(...c)=>s.toggleAutoActive&&s.toggleAutoActive(...c))},[r.autoActive?(t.openBlock(),t.createElementBlock("i",ot,"")):(t.openBlock(),t.createElementBlock("i",st,""))])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.weather.filter(c=>c.collected),c=>(t.openBlock(),t.createElementBlock("div",{key:c.key,class:t.normalizeClass(s.computeLayerClass(c,r.activeWeatherLayersCollected))},[t.createElementVNode("div",{class:"checkbox",onClick:d=>s.handleClickLayer(c)},null,8,nt),t.createElementVNode("span",{class:"name",onClick:d=>s.handleClickLayer(c)},t.toDisplayString(c.name),9,lt),c.key==="wind"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",ct,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindParticleCollected?"active":""]),onClick:e[6]||(e[6]=d=>s.handleToggleWindParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindFeatherCollected?"active":""]),onClick:e[7]||(e[7]=d=>s.handleToggleWindFeather())},"",2)])):t.createCommentVNode("",!0),c.key==="current"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",ht,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentParticleCollected?"active":""]),onClick:e[8]||(e[8]=d=>s.handleToggleCurrentParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentIsobandCollected?"active":""]),onClick:e[9]||(e[9]=d=>s.handleToggleCurrentIsoband())},"",2)])):t.createCommentVNode("",!0),c.key==="sig-wave-height"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key||d.key==="sig-wave")?(t.openBlock(),t.createElementBlock("div",dt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave")?"active":""]),onClick:e[10]||(e[10]=d=>s.handleToggleSigWaveRamp())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave-height")?"active":""]),onClick:e[11]||(e[11]=d=>s.handleToggleSigWaveHeight())},"",2)])):t.createCommentVNode("",!0)],2))),128))],4)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"available-layers flex-center",style:t.normalizeStyle({top:a.top+"px",right:a.layerToggle?"0px":"-240px"})},[t.createElementVNode("div",{class:t.normalizeClass(["list-box",a.layerToggle?"right-bar":""])},[t.createElementVNode("div",mt,[e[27]||(e[27]=t.createElementVNode("div",null,"Layers",-1)),t.createElementVNode("div",{class:"iconfont close-btn",onClick:e[12]||(e[12]=(...c)=>s.handleMenuToggle&&s.handleMenuToggle(...c))},"")]),t.createVNode(m,{style:{flex:"1"}},{default:t.withCtx(()=>[t.createElementVNode("div",pt,[t.createElementVNode("div",gt,[e[28]||(e[28]=t.createElementVNode("div",null,"Weather Layers",-1)),t.createElementVNode("div",{class:"switch flex-center",style:{"margin-right":"0"},onClick:e[13]||(e[13]=(...c)=>s.toggleAutoActive&&s.toggleAutoActive(...c))},[r.autoActive?(t.openBlock(),t.createElementBlock("i",yt,"")):(t.openBlock(),t.createElementBlock("i",ut,""))])]),t.createElementVNode("div",ft,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.weather,c=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:c.key},[c.hide?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(s.computeLayerClass(c,r.activeWeatherLayersCollected))},[t.createElementVNode("div",At,[t.createElementVNode("div",{class:"checkbox",onClick:d=>s.handleClickLayer(c)},null,8,wt),t.createElementVNode("span",{class:"name",onClick:d=>s.handleClickLayer(c)},t.toDisplayString(c.name),9,bt),c.key==="wind"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",Lt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindParticleCollected?"active":""]),onClick:e[14]||(e[14]=d=>s.handleToggleWindParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindFeatherCollected?"active":""]),onClick:e[15]||(e[15]=d=>s.handleToggleWindFeather())},"",2)])):t.createCommentVNode("",!0),c.key==="current"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",Ct,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentParticleCollected?"active":""]),onClick:e[16]||(e[16]=d=>s.handleToggleCurrentParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentIsobandCollected?"active":""]),onClick:e[17]||(e[17]=d=>s.handleToggleCurrentIsoband())},"",2)])):t.createCommentVNode("",!0),c.key==="sig-wave-height"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key||d.key==="sig-wave")?(t.openBlock(),t.createElementBlock("div",vt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave")?"active":""]),onClick:e[18]||(e[18]=d=>s.handleToggleSigWaveRamp())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave-height")?"active":""]),onClick:e[19]||(e[19]=d=>s.handleToggleSigWaveHeight())},"",2)])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{onClick:d=>s.handleWeatherLayerCollect(c)},[c.collected?(t.openBlock(),t.createElementBlock("i",Et,"")):(t.openBlock(),t.createElementBlock("i",Bt,""))],8,xt)],2))],64))),128)),e[29]||(e[29]=t.createElementVNode("div",{class:"tip flex-start"},[t.createElementVNode("i",{class:"iconfont bookmark-icon",style:{"align-self":"flex-start",padding:"5px 5px 0 0"}},""),t.createElementVNode("div",null,"You can add the layers to your favorites. (Max 6)")],-1))])]),t.createElementVNode("div",_t,[e[30]||(e[30]=t.createElementVNode("div",{class:"layers-title"},"Other Layers",-1)),t.createElementVNode("div",kt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.other,c=>{var d;return t.openBlock(),t.createElementBlock("div",{key:c.key,class:t.normalizeClass(["layer flex-between",s.computeLayerClass(c,r.activeOtherLayers)]),onClick:y=>s.handleOtherLayerPick(c)},[t.createElementVNode("div",Dt,[t.createElementVNode("div",zt,[(d=s.computeLayerClass(c,r.activeOtherLayers))!=null&&d.includes("active")?(t.openBlock(),t.createElementBlock("i",Nt,"")):(t.openBlock(),t.createElementBlock("i",Pt,""))]),t.createElementVNode("span",null,t.toDisplayString(c.name),1)])],10,It)}),128))])]),t.createElementVNode("div",Mt,[e[31]||(e[31]=t.createElementVNode("span",{class:"layers-title"},"Forecast Model",-1)),t.createElementVNode("div",St,[t.createVNode(h,{modelValue:r.source,"onUpdate:modelValue":e[20]||(e[20]=c=>r.source=c),class:"layer-radio flex-col-start-start",style:{width:"180px","align-items":"flex-start"}},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.sourceList,(c,d)=>(t.openBlock(),t.createBlock(l,{key:`source${c.name}`,value:c.name},{default:t.withCtx(()=>{var y,A,B,f,_,v;return[t.createTextVNode(t.toDisplayString(c.name)+" ",1),d!==0?(t.openBlock(),t.createElementBlock("span",Tt,t.toDisplayString(c.resolution)+"km "+t.toDisplayString(c.length)+"days",1)):t.createCommentVNode("",!0),d===0?(t.openBlock(),t.createElementBlock("div",Qt,"Provides the best forecast")):(B=(A=(y=c==null?void 0:c.update)==null?void 0:y.default)==null?void 0:A.meta)!=null&&B.initialisationTime?(t.openBlock(),t.createElementBlock("div",Vt,"Update: "+t.toDisplayString(s.computeDateZ((v=(_=(f=c==null?void 0:c.update)==null?void 0:f.default)==null?void 0:_.meta)==null?void 0:v.initialisationTime)),1)):t.createCommentVNode("",!0)]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])])]),_:1})],2)],4)])}const Ft=V(et,[["render",Ht]]),Fo="",Ot={name:"IdmWindBarb",props:{map:{type:Object},wind:{type:Object},current:{type:Object},beforeLayer:{type:String},mapProjection:{type:String},showWindFeather:{type:Boolean,default:!1},showWindParticle:{type:Boolean,default:!1},toggleParticeVersion:{type:Number},toggleVersion:{type:Number}},emits:["particle","showWindFeather"],data(){return{source:"wind-barb-source",barbs:[0,2,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100,105],empty:N.featureCollection([]),right:10,bottom:125,windBarbLoaded:!1}},watch:{"wind.version":{handler(){var i;(i=this.wind)!=null&&i.active&&this.showWindFeather?this.handleRender():this.handleClear()},deep:!0},toggleParticeVersion:{handler(){this.handleParticle()}},showWindFeather:{handler(){this.handleToggle()}}},methods:{handleParticle(){this.$emit("particle",{particle:this.showWindParticle,key:"wind",weight:1})},handleRender(){var i,e,a,o;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.wind){const r=new Date().valueOf();let s=0,n=0,l=this.empty;if((i=this.wind)!=null&&i.active&&(l=(e=this.wind)==null?void 0:e.data),(a=this.map)!=null&&a.getSource(this.source))(o=this.map)==null||o.getSource(this.source).setData(l),n=new Date().valueOf()-(r+s),console.log("[wind] update elapsed: ",n,", total: ",s+=n);else{this.map.addSource(this.source,{type:"geojson",data:l});for(let h=0;h<(this.barbs??[]).length-1;h++){const m=(this.barbs??[])[h]||0,c=(this.barbs??[])[h+1]||0,d=m<10?`00${m}kts`:m<100?`0${m}kts`:`${m}kts`;this.map.addLayer({id:d,type:"symbol",filter:["all",[">=","spd",m],["<","spd",c]],source:this.source,layout:{"symbol-placement":"point","icon-image":d,"icon-size":.14,"icon-offset":[0,-20],"icon-allow-overlap":!0,"icon-rotation-alignment":"map","icon-rotate":{property:"dir",stops:[[0,0],[360,360]]}},paint:{"icon-opacity":1,"text-color":"#222"}},this.beforeLayer)}this.windBarbLoaded=!0,n=new Date().valueOf()-(r+s),console.log("[wind] add elapsed: ",n,", total: ",s+=n)}}},handleToggle(){if(!this.windBarbLoaded)this.handleRender();else for(const i of this.barbs??[]){const e=i<10?`00${i}kts`:i<100?`0${i}kts`:`${i}kts`;this.map.getLayer(e)&&this.map.setLayoutProperty(e,"visibility",this.showWindFeather?"visible":"none")}},handleClear(){for(const i of this.barbs??[]){const e=i<10?`00${i}kts`:i<100?`0${i}kts`:`${i}kts`;this.map.getLayer(e)&&this.map.removeLayer(e)}this.map.getSource(this.source)&&this.map.removeSource(this.source),this.windBarbLoaded=!1}}};function Rt(i,e,a,o,r,s){return null}const jt=V(Ot,[["render",Rt]]);class Qe{constructor(e){Y(this,"map");Y(this,"mercator");Y(this,"rampColorLayer");Y(this,"rampColorSource");Y(this,"particleLayer");Y(this,"particleSource");Y(this,"rampColorCanvas");Y(this,"particleCanvas");Y(this,"ratio");this.map=e,this.mercator=new Ze,this.rampColorLayer="ramp-color-layer",this.rampColorSource="ramp-color-source",this.particleLayer="particle-layer",this.particleSource="particle-source",this.rampColorCanvas=document.createElement("canvas"),this.particleCanvas=document.createElement("canvas"),this.ratio=window.devicePixelRatio}convertNLng(e,a=0){return e>180?this.convertNLng(e-360,a+1):e<-180?this.convertNLng(e+360,a+1):[e,a]}getBoundLngLat(){const e=this.map.getBounds();return[[e._sw.lng,e._ne.lat],[e._ne.lng,e._ne.lat],[e._ne.lng,e._sw.lat],[e._sw.lng,e._sw.lat]]}getBoundPixel(){const e=this.map.getBounds(),a=this.map.getZoom()+1,o=[e._ne.lng,e._ne.lat],r=[e._sw.lng,e._sw.lat],[s,n]=this.convertNLng(o[0]),[l,h]=this.convertNLng(r[0]),[m,c]=this.mercator.px([s,o[1]],a),[d,y]=this.mercator.px([l,r[1]],a),A=Math.round(this.mercator.size*Math.pow(2,a)*(n+h));return[d,y,m+A,c]}getBoundRange(){const e=this.map.getZoom()+1,a=this.mercator.size*Math.pow(2,e),o=this.getBoundPixel();return[o[0]/a,o[2]/a,o[3]/a,o[1]/a]}getWorldCopy(e,a){const o=2**a,[r,s,n,l]=e.map(c=>~~(c/(o*256))),h=[];for(let c=l;c<=s;c++)for(let d=r;d<=n;d++)h.push([d,c]);return h.map(c=>{const d=2**a*256;return[c[0]*d,c[1]*d,d]})}resize(){let e=this.map.getSource(this.rampColorSource);e.setCoordinates(this.getBoundLngLat()),e=this.map.getSource(this.particleSource),e.setCoordinates(this.getBoundLngLat()),this.rampColorCanvas.width=this.map._canvas.clientWidth,this.rampColorCanvas.height=this.map._canvas.clientHeight,this.particleCanvas.width=this.map._canvas.clientWidth,this.particleCanvas.height=this.map._canvas.clientHeight}toggle(e){const a=this.map.getLayoutProperty(this.rampColorLayer,"visibility"),o=e?"visible":"none";a!==o&&this.map.setLayoutProperty(this.rampColorLayer,"visibility",o)}toggleParticle(e){const a=this.map.getLayoutProperty(this.particleLayer,"visibility"),o=e?"visible":"none";a!==o&&this.map.setLayoutProperty(this.particleLayer,"visibility",o)}}class ve{createShader(e,a,o){const r=e.createShader(a);if(r&&(e.shaderSource(r,o),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)))throw new Error(e.getShaderInfoLog(r)||"error happened while create shader...");return r}createTexture(e,a,o,r,s,n,l){const h=e.createTexture();return e.bindTexture(e.TEXTURE_2D,h),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,a),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,r),s instanceof Uint8Array?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n,l,0,e.RGBA,e.UNSIGNED_BYTE,s):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,s),e.bindTexture(e.TEXTURE_2D,null),h}createDataBuffer(e,a,o){if(e){const r=e.createBuffer();return a==="array"?(e.bindBuffer(e.ARRAY_BUFFER,r),o&&e.bufferData(e.ARRAY_BUFFER,o,e.STATIC_DRAW)):a==="element"&&(e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,r),o&&e.bufferData(e.ELEMENT_ARRAY_BUFFER,o,e.STATIC_DRAW)),r}return null}createProgram(e,a,o){const r=e.createProgram(),s=this.createShader(e,e.VERTEX_SHADER,a),n=this.createShader(e,e.FRAGMENT_SHADER,o);if(r&&s&&n&&(e.attachShader(r,s),e.attachShader(r,n),e.linkProgram(r),!e.getProgramParameter(r,e.LINK_STATUS)))throw new Error(e.getProgramInfoLog(r)||"error happened while creating ramp color program");return r}createProgramWrapper(e,a,o){const r=this.createProgram(e,a,o);if(r){const s={program:r},n=e.getProgramParameter(r,e.ACTIVE_ATTRIBUTES);for(let h=0;h<n;h++){const m=e.getActiveAttrib(r,h);s[m.name]=e.getAttribLocation(r,m.name)}const l=e.getProgramParameter(r,e.ACTIVE_UNIFORMS);for(let h=0;h<l;h++){const m=e.getActiveUniform(r,h);s[m.name]=e.getUniformLocation(r,m.name)}return s}}setup(e,a,o=!1,r,s){const n=document.createElement("canvas");n.width=256,n.height=1;const l=n.getContext("2d");if(l&&e){const h=l==null?void 0:l.createLinearGradient(0,0,256,0);return a.forEach(([m,c])=>{h.addColorStop(m,c)}),l.fillStyle=h,l.fillRect(0,0,256,1),{canvas:n,texture:this.createTexture(e,e.LINEAR,e.LINEAR,e.CLAMP_TO_EDGE,o?new Uint8Array(l.getImageData(0,0,256,1).data):n,r,s)}}}setupParticle(e,a=1e3){const o=Math.ceil(Math.sqrt(a)),r=o*o,s=new Uint8Array(r*4);for(let c=0;c<s.length;c++)s[c]=Math.floor(Math.random()*256);const n=this.createTexture(e,e.NEAREST,e.NEAREST,e.CLAMP_TO_EDGE,s,o,o),l=this.createTexture(e,e.NEAREST,e.NEAREST,e.CLAMP_TO_EDGE,s,o,o),h=new Float32Array(r);for(let c=0;c<r;c++)h[c]=c;const m=this.createDataBuffer(e,"array",h);return{resolution:o,total:r,texture0:n,texture1:l,indexBuffer:m}}bind(e,a,o){const r=this.createProgram(e,a,o);if(r){const s=this.createDataBuffer(e,"array",void 0),n=e.getAttribLocation(r,"a_position");e.enableVertexAttribArray(n),e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0);const l=new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]);this.createDataBuffer(e,"array",l);const h=e.getAttribLocation(r,"a_texCoord");return e.enableVertexAttribArray(h),e.vertexAttribPointer(h,2,e.FLOAT,!1,0,0),{program:r,aPositionBuffer:s}}return{}}bindParticle(e,a,o,r,s,n){const l=this.createProgramWrapper(e,a,o),h=this.createProgramWrapper(e,r,s),m=this.createProgramWrapper(e,r,n),c=this.createDataBuffer(e,"array",new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1])),d=e.createFramebuffer();return{particle:l,screen:h,update:m,quadBuffer:c,frameBuffer:d}}draw(e,a,o,r,s,n,l){var h,m;if(a&&o){e.resize(),a==null||a.viewport(0,0,(h=a==null?void 0:a.canvas)==null?void 0:h.width,(m=a==null?void 0:a.canvas)==null?void 0:m.height),a.clearColor(0,0,0,0),a.clear(a.COLOR_BUFFER_BIT|a.DEPTH_BUFFER_BIT);try{a.useProgram(o);const c={resolution:a.getUniformLocation(o,"u_resolution"),image:a.getUniformLocation(o,"u_image"),color:a.getUniformLocation(o,"u_color"),scale:a.getUniformLocation(o,"u_scale"),uvRange:a.getUniformLocation(o,"u_range_u_v"),sRange:a.getUniformLocation(o,"u_range_s")};c.resolution&&a.uniform2f(c.resolution,a.canvas.width*e.ratio,a.canvas.height*e.ratio),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,r),c.image&&a.uniform1i(c.image,0),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,s),c.color&&a.uniform1i(c.color,1),l!=null&&l.uvRange&&(l!=null&&l.sRange)&&(c.uvRange&&a.uniform2f(c.uvRange,l.uvRange[0],l.uvRange[1]),c.sRange&&a.uniform2f(c.sRange,l.sRange[0],l.sRange[1])),c.scale&&a.uniform1f(c.scale,(l==null?void 0:l.scale)||1);const d=e.getBoundPixel(),y=e.map.getZoom()+1,A=e.getWorldCopy(d,y);for(const B of A){const f=(B[0]-d[0])*e.ratio,_=(B[1]-d[3])*e.ratio,v=B[2]*e.ratio,[u,w,p,L]=[f,v+f,_,v+_],g=new Float32Array([u,p,w,p,u,L,u,L,w,p,w,L]);a.bindBuffer(a.ARRAY_BUFFER,n),a.bufferData(a.ARRAY_BUFFER,g,a.STATIC_DRAW),a.drawArrays(a.TRIANGLES,0,6)}}catch(c){console.log(`render failed...${c}`)}}}drawParticle(e,a,o,r,s){var n,l;a&&(a==null||a.viewport(0,0,(n=a==null?void 0:a.canvas)==null?void 0:n.width,(l=a==null?void 0:a.canvas)==null?void 0:l.height),a.disable(a.DEPTH_TEST),a.disable(a.STENCIL_TEST),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,r.texture0),this.renderScreen(e,a,r,s),this.updateParticles(e,a,r,s))}renderScreen(e,a,o,r){a.bindFramebuffer(a.FRAMEBUFFER,o.frameBuffer),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o.screenTexture,0),a.viewport(0,0,a.canvas.width,a.canvas.height),this.renderScreenTexture(a,o.backgroundTexture,o.screen,o.quadBuffer,.95),this.renderParticles(e,a,o,r),a.bindFramebuffer(a.FRAMEBUFFER,null),this.renderScreenTexture(a,o.screenTexture,o.screen,o.quadBuffer,1);const s=o.backgroundTexture;o.backgroundTexture=o.screenTexture,o.screenTexture=s}renderScreenTexture(e,a,o,r,s){e&&(e.useProgram(o.program),e.bindBuffer(e.ARRAY_BUFFER,r),e.enableVertexAttribArray(o.a_pos),e.vertexAttribPointer(o.a_pos,2,e.FLOAT,!1,0,0),e.activeTexture(e.TEXTURE2),e.bindTexture(e.TEXTURE_2D,a),e.uniform1i(o.u_screen,2),e.uniform1f(o.u_opacity,s),e.drawArrays(e.TRIANGLES,0,6))}renderParticles(e,a,o,r){if(a){a.useProgram(o.particle.program),a.bindBuffer(a.ARRAY_BUFFER,o.indexBuffer),a.enableVertexAttribArray(o.particle.a_index),a.vertexAttribPointer(o.particle.a_index,1,a.FLOAT,!1,0,0),a.activeTexture(a.TEXTURE2),a.bindTexture(a.TEXTURE_2D,o.color.texture),a.uniform1i(o.particle.u_factor,0),a.uniform1i(o.particle.u_particles,1),a.uniform1i(o.particle.u_color_ramp,2),a.uniform1f(o.particle.u_particles_resolution,o.resolution*e.ratio),a.uniform1f(o.particle.u_point,e.ratio);const s=e.getBoundRange();a.uniform4f(o.particle.u_viewport,s[0],s[1],s[2],s[3]),a.uniform2f(o.particle.u_factor_min,r.uvRange[0],r.uvRange[0]),a.uniform2f(o.particle.u_factor_max,r.uvRange[1],r.uvRange[1]),a.drawArrays(a.POINTS,0,o.total)}}updateParticles(e,a,o,r){var n,l;if(a){a.bindFramebuffer(a.FRAMEBUFFER,o.frameBuffer),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o.texture1,0),a.viewport(0,0,o.resolution,o.resolution),a.useProgram(o.update.program),a.bindBuffer(a.ARRAY_BUFFER,o.quadBuffer),a.enableVertexAttribArray(o.update.a_pos),a.vertexAttribPointer(o.update.a_pos,2,a.FLOAT,!1,0,0),a.uniform1i(o.update.u_factor,0),a.uniform1i(o.update.u_particles,1);const h=e.getBoundRange();a.uniform4f(o.update.u_viewport,h[0],h[1],h[2],h[3]),a.uniform1f(o.update.u_rand_seed,Math.random()),a.uniform2f(o.update.u_factor_res,(n=o==null?void 0:o.image)==null?void 0:n.width,(l=o==null?void 0:o.image)==null?void 0:l.height),a.uniform2f(o.update.u_factor_min,r.uvRange[0],r.uvRange[0]),a.uniform2f(o.update.u_factor_max,r.uvRange[1],r.uvRange[1]),a.uniform1f(o.update.u_speed_factor,r.speedFactor*e.ratio),a.uniform1f(o.update.u_drop_rate,r.dropRate),a.uniform1f(o.update.u_drop_rate_bump,r.dropRateBump),a.drawArrays(a.TRIANGLES,0,6)}const s=o.texture0;o.texture0=o.texture1,o.texture1=s}resize(e,a){e.resize();const o=new Uint8Array(a.canvas.width*a.canvas.height*4).fill(0,0,a.canvas.width*a.canvas.height*4),r=this.createTexture(a,a.NEAREST,a.NEAREST,a.CLAMP_TO_EDGE,o,a.canvas.width,a.canvas.height),s=this.createTexture(a,a.NEAREST,a.NEAREST,a.CLAMP_TO_EDGE,o,a.canvas.width,a.canvas.height);return{screenTexture:r,backgroundTexture:s}}async loadImg(e){return new Promise(a=>{const o=new Blob([e],{type:e.type}),r=URL.createObjectURL(o),s=new Image;s.crossOrigin="anonymous",s.src=r,s.onload=()=>a(s)})}}class K{}Y(K,"vertexSchema",`
1
+ (function(W,J){typeof exports=="object"&&typeof module<"u"?J(exports,require("@idm-plugin/tag"),require("moment"),require("axios"),require("moment-timezone"),require("vue"),require("@turf/turf"),require("@mapbox/sphericalmercator"),require("mapbox-gl"),require("@idm-plugin/geo"),require("@idm-plugin/meteo")):typeof define=="function"&&define.amd?define(["exports","@idm-plugin/tag","moment","axios","moment-timezone","vue","@turf/turf","@mapbox/sphericalmercator","mapbox-gl","@idm-plugin/geo","@idm-plugin/meteo"],J):(W=typeof globalThis<"u"?globalThis:W||self,J(W["idm-gl"]={},W["@idm-plugin/tag"],W.moment,W.axios,W["moment-timezone"],W.Vue,W["@turf/turf"],W["@mapbox/sphericalmercator"],W["mapbox-gl"],W["@idm-plugin/geo"],W["@idm-plugin/meteo"]))})(this,function(W,J,G,Ce,Me,t,Je,Ze,fe,j,De){"use strict";var To=Object.defineProperty;var Qo=(W,J,G)=>J in W?To(W,J,{enumerable:!0,configurable:!0,writable:!0,value:G}):W[J]=G;var Y=(W,J,G)=>(Qo(W,typeof J!="symbol"?J+"":J,G),G);function $e(i){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const a in i)if(a!=="default"){const o=Object.getOwnPropertyDescriptor(i,a);Object.defineProperty(e,a,o.get?o:{enumerable:!0,get:()=>i[a]})}}return e.default=i,Object.freeze(e)}const N=$e(Je),Vo="",Ho="",V=(i,e)=>{const a=i.__vccOpts||i;for(const[o,r]of e)a[o]=r;return a},et={name:"IdmGlLayer",props:{map:{type:Object},mapProjection:{type:String},gateway:{type:String},token:{type:String},top:{type:Number,default:60},layerToggle:{type:Boolean,default:!1},toggleVersion:{type:Number},isLogin:{type:Boolean,default:void 0},showWindFeather:{type:Boolean,default:void 0},showWindParticle:{type:Boolean,default:void 0},showCurrentIsoband:{type:Boolean,default:void 0},showCurrentParticle:{type:Boolean,default:void 0},forecastModel:{type:String}},emits:["weather","other","toggleWindParticle","toggleWindFeather","toggleCurrentParticle","toggleCurrentIsoband","toggleWindParticeVersion","toggleCurrentParticeVersion","coordinate","measure","point","3d","layerToggle","handleToggleVersion","login","forecastModel"],data(){return{autoActive:!0,layers:{weather:[...J.LayerHelper.WEATHER_LAYERS.filter(i=>!["swell-height","swell-direction","current-direction","current-speed"].includes(i.key))],other:[...J.LayerHelper.OTHER_LAYERS.filter(i=>i.enabled)]},activeWeatherLayers:[],activeWeatherLayersCollected:[],activeOtherLayers:[],autoActiveCache:"autoActiveCacheGL4",activeWeatherLayersCache:"activeWeatherLayersCacheGL4",activeOtherLayersCache:"activeOtherLayersCacheGL4",collectedLayerCache:"collectedLayerCacheGL4",sourceCache:"defaultSourceCacheGL4",windFeatherCollectedCache:"windFeatherCollectedCacheGL4",currentIsobandCollectedCache:"currentIsobandCollectedCacheGL4",showCoord:!1,showMeasure:!1,showPoint:!1,show3d:!1,version:{v:"0.0.1",k:"cacheVersionGL4"},source:"Best Match",sourceList:[],right:10,rampColorLayers:["visibility","precip3h","temp","water-temp","ice-thickness","ice-cover"],showWindParticleCollected:!1,showWindFeatherCollected:!0,showCurrentParticleCollected:!1,showCurrentIsobandCollected:!1}},computed:{computeLayerClass(){return function(i,e){var o;let a="layer flex-between";return e.some(r=>r.key===i.key||r.key==="sig-wave"&&i.key==="sig-wave-height")&&(a=a+" active"),(!i.enabled||(o=this.layers.weather)!=null&&o.some(r=>r.key===i.key)&&!this.autoActive||this.rampColorLayers.includes(i.key)&&this.mapProjection==="globe")&&(a=a+" disabled"),a}},hasCollectedLayers(){var i;return((i=this.layers.weather.filter(e=>e.collected))==null?void 0:i.length)>0},computeDateZ(){return function(i){var e;if(i){const a=G(i);return`${(e=a==null?void 0:a.utc())==null?void 0:e.format("MMM-DD/HHmm")}Z`}return"-"}},sourceCode(){var i;return(i=this.sourceList.find(e=>e.name===this.source))==null?void 0:i.code}},watch:{toggleVersion:{handler(){this.$nextTick(()=>{var i;this.right=(((i=document.getElementsByClassName("right-bar")[0])==null?void 0:i.clientWidth)||0)+10})}},source:{handler(i,e){i&&i!==e&&this.$emit("forecastModel",this.source),i&&e&&i!==e&&this.handleConfirm()}},activeWeatherLayers:{handler(i,e){this.autoActive&&(this.activeWeatherLayersCollected=this.activeWeatherLayers,localStorage.setItem(this.activeWeatherLayersCache,JSON.stringify(this.activeWeatherLayers)))}},showWindParticle:{handler(i,e){this.autoActive&&(this.showWindParticleCollected=this.showWindParticle)}},showWindFeather:{handler(i,e){this.autoActive&&(this.showWindFeatherCollected=this.showWindFeather,localStorage.setItem(this.windFeatherCollectedCache,this.showWindFeatherCollected))}},showCurrentParticle:{handler(i,e){this.autoActive&&(this.showCurrentParticleCollected=this.showCurrentParticle)}},showCurrentIsoband:{handler(i,e){this.autoActive&&(this.showCurrentIsobandCollected=this.showCurrentIsoband,localStorage.setItem(this.currentIsobandCollectedCache,this.showCurrentIsobandCollected))}}},async mounted(){await this.fetchMeteoSource(),this.fetchCache(),this.handleConfirm()},methods:{async fetchMeteoSource(){var e;this.sourceList=[];let i=await Ce.get(`${this.gateway}/api/arc/meteo2/models`,{headers:{Authorization:this.token}});(i==null?void 0:i.data.code)===0&&(this.sourceList=(e=i==null?void 0:i.data.data)==null?void 0:e.weather)},fetchCache(){const i=localStorage.getItem(this.version.k);this.version.v!==i&&(localStorage.removeItem(this.autoActiveCache),localStorage.removeItem(this.activeWeatherLayersCache),localStorage.removeItem(this.collectedLayerCache),localStorage.removeItem(this.activeOtherLayersCache),localStorage.removeItem(this.windFeatherCollectedCache),localStorage.removeItem(this.currentIsobandCollectedCache),localStorage.setItem(this.version.k,this.version.v));let e=localStorage.getItem(this.autoActiveCache);this.autoActive=e!=="false",e=localStorage.getItem(this.collectedLayerCache);let a=JSON.parse(e||'[{"weight": 16, "name": "Sig Waves", "key": "sig-wave-height", "collected": true},{"weight": 1, "name": "Wind", "key": "wind", "collected": true},{"weight": 96, "name": "Current", "key": "current", "collected": true},{"weight": 256,"name": "Tropicals","key": "tropicals", "collected": true}]');this.layers.weather.forEach(o=>{o.collected=!!a.some(r=>r.key===o.key&&r.collected)}),e=localStorage.getItem(this.activeWeatherLayersCache),e||localStorage.setItem(this.activeWeatherLayersCache,JSON.stringify([{weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1},{weight:16,name:"Sig Waves",key:"sig-wave-height",enabled:!0,type:"jpg"},{weight:256,name:"Tropicals",key:"tropicals",enabled:!0,type:"json"}])),e=localStorage.getItem(this.activeWeatherLayersCache),a=JSON.parse(e),this.autoActive?this.activeWeatherLayers=[...a]:this.activeWeatherLayersCollected=[...a],a.some(o=>o.key==="wind"&&o.particle)&&(this.$emit("toggleWindParticle",!0),this.showWindParticleCollected=!0),a.some(o=>o.key==="current"&&o.particle)&&(this.$emit("toggleCurrentParticle",!0),this.showCurrentParticleCollected=!0),this.showWindFeatherCollected=JSON.parse(localStorage.getItem(this.windFeatherCollectedCache))?JSON.parse(localStorage.getItem(this.windFeatherCollectedCache)):this.showWindFeatherCollected,this.showCurrentIsobandCollected=JSON.parse(localStorage.getItem(this.currentIsobandCollectedCache))?JSON.parse(localStorage.getItem(this.currentIsobandCollectedCache)):this.showCurrentIsobandCollected,this.autoActive&&(this.$emit("toggleWindFeather",this.showWindFeatherCollected),this.$emit("toggleCurrentIsoband",this.showCurrentIsobandCollected)),a.some(o=>o.key==="wind"&&!o.particle&&!this.showWindFeatherCollected)&&(a=a.filter(o=>o.key!=="wind")),a.some(o=>o.key==="current"&&!o.particle&&!this.showCurrentIsobandCollected)&&(a=a.filter(o=>o.key!=="current")),e=localStorage.getItem(this.activeOtherLayersCache),a=JSON.parse(e||'[{"weight":4,"name":"ECA Zones","key":"eca-zones","enabled":true,"type":"json"}, {"weight": 2048,"name": "ENC","key": "enc","h5": true,"enabled": true,"type": "origin"}]'),this.activeOtherLayers=a,e=localStorage.getItem(this.sourceCache),this.source=this.forecastModel?this.forecastModel:e?e==="CMEMS"?"ECMWF":e:this.source,this.$emit("forecastModel",this.source)},handleConfirm(){this.autoActive&&this.$emit("weather",JSON.parse(localStorage.getItem(this.activeWeatherLayersCache)),this.sourceCode),this.$emit("other",this.activeOtherLayers),localStorage.setItem(this.autoActiveCache,this.autoActive),localStorage.setItem(this.sourceCache,this.source)},handleClickLayer(i){i.key==="sig-wave-height"&&this.activeWeatherLayers.some(e=>e.key==="sig-wave")?this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave-height"&&e.key!=="sig-wave"):this.handleWeatherLayerPick(i)},handleWeatherLayerPick(i){if(this.activeWeatherLayers=JSON.parse(localStorage.getItem(this.activeWeatherLayersCache)),this.rampColorLayers.includes(i.key)&&this.mapProjection==="globe"||!this.autoActive)return!1;(i.key==="wind"&&!this.showWindFeather||i.key==="current"&&!this.showCurrentIsoband)&&(i.particle=!0),this.activeWeatherLayers.some(e=>e.key===i.key)?this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!==i.key):this.activeWeatherLayers.length<6&&i.enabled&&(["png","jpg"].includes(i.type)?(this.activeWeatherLayers.forEach(e=>{(e.key==="wind"&&this.showWindFeather||i.key==="current"&&this.showCurrentIsoband)&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))):i.key==="wind"?(this.activeWeatherLayers.forEach(e=>{e.key==="current"&&this.showCurrentIsoband&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))):i.key==="current"&&(this.activeWeatherLayers.forEach(e=>{e.key==="wind"&&this.showWindFeather&&(e.particle=!1)}),this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.type==="json"&&!(["wind","current"].includes(e.key)&&e.particle))),this.activeWeatherLayers.push(i)),i.key==="sig-wave"&&(this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave-height")),i.key==="sig-wave-height"&&(this.activeWeatherLayers=this.activeWeatherLayers.filter(e=>e.key!=="sig-wave")),this.$emit("weather",this.activeWeatherLayers,this.sourceCode)},handleWeatherLayerCollect(i){var e;if(!this.autoActive)return!1;!i.collected&&((e=this.layers.weather.filter(a=>a.collected))==null?void 0:e.length)>=6&&(this.layers.weather.filter(a=>a.collected)[0].collected=!1),i.collected=!i.collected,localStorage.setItem(this.collectedLayerCache,JSON.stringify(this.layers.weather)),this.$emit("handleToggleVersion")},handleToggleWindParticle(){!this.showWindFeather&&this.showWindParticle?this.handleWeatherLayerPick({weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1}):(this.showCurrentParticle&&(this.$emit("toggleCurrentParticle",!1),this.showCurrentIsoband||(this.activeWeatherLayers=this.activeWeatherLayers.filter(i=>i.key!=="current"))),this.$emit("toggleWindParticle",!this.showWindParticle),this.$emit("toggleWindParticeVersion"))},handleToggleWindFeather(){this.showWindFeather&&!this.showWindParticle&&this.handleWeatherLayerPick({weight:1,name:"Wind",key:"wind",enabled:!0,type:"json",particle:!1}),this.$emit("toggleWindFeather",!this.showWindFeather)},handleToggleCurrentParticle(){!this.showCurrentIsoband&&this.showCurrentParticle?this.handleWeatherLayerPick({weight:96,name:"Current",key:"current",enabled:!0,type:"json",particle:!1}):(this.showWindParticle&&(this.$emit("toggleWindParticle",!1),this.showWindFeather||(this.activeWeatherLayers=this.activeWeatherLayers.filter(i=>i.key!=="wind"))),this.$emit("toggleCurrentParticle",!this.showCurrentParticle),this.$emit("toggleCurrentParticeVersion"))},handleToggleCurrentIsoband(){this.showCurrentIsoband&&!this.showCurrentParticle&&this.handleWeatherLayerPick({weight:96,name:"Current",key:"current",enabled:!0,type:"json",particle:!1}),this.$emit("toggleCurrentIsoband",!this.showCurrentIsoband)},handleToggleSigWaveRamp(){this.handleWeatherLayerPick({weight:4194304,name:"Sig Waves",key:"sig-wave",enabled:!0,type:"jpg"})},handleToggleSigWaveHeight(){this.handleWeatherLayerPick({weight:16,name:"Sig Waves",key:"sig-wave-height",enabled:!0,type:"json"})},handleOtherLayerPick(i){this.activeOtherLayers.some(e=>e.key===i.key)?this.activeOtherLayers=this.activeOtherLayers.filter(e=>e.key!==i.key):i.enabled&&this.activeOtherLayers.push(i),localStorage.setItem(this.activeOtherLayersCache,JSON.stringify(this.activeOtherLayers)),this.$emit("other",this.activeOtherLayers)},handleMenuToggle(){this.$emit("layerToggle",!this.layerToggle)},toggleAutoActive(){this.autoActive=!this.autoActive,localStorage.setItem(this.autoActiveCache,this.autoActive),this.autoActive?(this.$emit("weather",this.activeWeatherLayersCollected,this.sourceCode),this.$emit("toggleWindFeather",localStorage.getItem(this.windFeatherCollectedCache)==="true"),this.$emit("toggleCurrentIsoband",localStorage.getItem(this.currentIsobandCollectedCache)==="true")):(this.$emit("weather",[],this.sourceCode),this.$emit("toggleWindFeather",!1),this.$emit("toggleCurrentIsoband",!1))},handleCoordToggle(){this.showCoord=!this.showCoord,this.$emit("coordinate",this.showCoord)},handlePointToggle(){this.isLogin?(this.showPoint=!this.showPoint,this.$emit("point",this.showPoint)):this.$emit("login")},handleMeasureToggle(){this.showMeasure=!this.showMeasure,this.$emit("measure",this.showMeasure)},handle3DToggle(){this.show3d=!this.show3d,this.$emit("3d",this.show3d)}}},tt={class:"idm-gl4-layer"},at={class:"bar-item layer-bars"},it={class:"bar-item tool-bars"},rt={class:"flex-between"},ot={key:0,class:"iconfont active"},st={key:1,class:"iconfont"},nt=["onClick"],lt=["onClick"],ct={key:0,class:"flex-start"},ht={key:1,class:"flex-start"},dt={key:2,class:"flex-start"},mt={class:"header-box flex-between"},pt={class:"weather-layers card-bg"},gt={class:"layers-title flex-between"},yt={key:0,class:"iconfont active"},ut={key:1,class:"iconfont"},ft={class:"layers-body"},At={class:"flex-start"},wt=["onClick"],bt=["onClick"],Lt={key:0,class:"flex-start"},Ct={key:1,class:"flex-start"},vt={key:2,class:"flex-start"},xt=["onClick"],Et={key:0,class:"iconfont bookmark-icon active"},Bt={key:1,class:"iconfont bookmark-icon inactive"},_t={class:"other-layers card-bg"},kt={class:"layers-body"},It=["onClick"],Dt={class:"flex-start"},zt={class:"switch flex-center"},Nt={key:0,class:"iconfont active"},Pt={key:1,class:"iconfont"},Mt={class:"source-layers card-bg"},St={class:"layers-body"},Tt={key:0},Qt={key:1,class:"radio-tip"},Vt={key:2,class:"radio-tip"};function Ht(i,e,a,o,r,s){const n=t.resolveComponent("ElTooltip"),l=t.resolveComponent("ElRadio"),h=t.resolveComponent("ElRadioGroup"),m=t.resolveComponent("ElScrollbar");return t.openBlock(),t.createElementBlock("div",tt,[t.createElementVNode("div",{class:"menu-bar-box",style:t.normalizeStyle({top:a.top+10+"px",right:r.right+"px"})},[t.createElementVNode("div",at,[t.createVNode(n,{placement:"left",effect:"light",content:"Menu","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(a.layerToggle?"menu-icon active":"menu-icon"),onClick:e[0]||(e[0]=(...c)=>s.handleMenuToggle&&s.handleMenuToggle(...c))},e[21]||(e[21]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1})])],4),t.createElementVNode("div",{class:"menu-bar-box",style:t.normalizeStyle({top:a.top+160+"px",right:r.right+"px"})},[t.createElementVNode("div",it,[t.createVNode(n,{placement:"left",effect:"light",content:"Measure","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showMeasure?"menu-icon active":"menu-icon"),onClick:e[1]||(e[1]=(...c)=>s.handleMeasureToggle&&s.handleMeasureToggle(...c))},e[22]||(e[22]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"Point Meteo","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showPoint?"menu-icon active":"menu-icon"),onClick:e[2]||(e[2]=(...c)=>s.handlePointToggle&&s.handlePointToggle(...c))},e[23]||(e[23]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"Grid","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.showCoord?"menu-icon active":"menu-icon"),onClick:e[3]||(e[3]=(...c)=>s.handleCoordToggle&&s.handleCoordToggle(...c))},e[24]||(e[24]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1}),t.createVNode(n,{placement:"left",effect:"light",content:"3D","show-after":1e3},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(r.show3d?"menu-icon active":"menu-icon"),onClick:e[4]||(e[4]=(...c)=>s.handle3DToggle&&s.handle3DToggle(...c))},e[25]||(e[25]=[t.createElementVNode("span",{class:"iconfont"},"",-1)]),2)]),_:1})])],4),s.hasCollectedLayers?(t.openBlock(),t.createElementBlock("div",{key:0,class:"active-layers",style:t.normalizeStyle({right:r.right+"px",bottom:"100px"})},[t.createElementVNode("div",rt,[e[26]||(e[26]=t.createElementVNode("div",{style:{margin:"2px 5px"}},"Weather Layers",-1)),t.createElementVNode("div",{class:"switch flex-center",style:{"font-size":"28px","margin-right":"0"},onClick:e[5]||(e[5]=(...c)=>s.toggleAutoActive&&s.toggleAutoActive(...c))},[r.autoActive?(t.openBlock(),t.createElementBlock("i",ot,"")):(t.openBlock(),t.createElementBlock("i",st,""))])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.weather.filter(c=>c.collected),c=>(t.openBlock(),t.createElementBlock("div",{key:c.key,class:t.normalizeClass(s.computeLayerClass(c,r.activeWeatherLayersCollected))},[t.createElementVNode("div",{class:"checkbox",onClick:d=>s.handleClickLayer(c)},null,8,nt),t.createElementVNode("span",{class:"name",onClick:d=>s.handleClickLayer(c)},t.toDisplayString(c.name),9,lt),c.key==="wind"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",ct,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindParticleCollected?"active":""]),onClick:e[6]||(e[6]=d=>s.handleToggleWindParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindFeatherCollected?"active":""]),onClick:e[7]||(e[7]=d=>s.handleToggleWindFeather())},"",2)])):t.createCommentVNode("",!0),c.key==="current"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",ht,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentParticleCollected?"active":""]),onClick:e[8]||(e[8]=d=>s.handleToggleCurrentParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentIsobandCollected?"active":""]),onClick:e[9]||(e[9]=d=>s.handleToggleCurrentIsoband())},"",2)])):t.createCommentVNode("",!0),c.key==="sig-wave-height"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key||d.key==="sig-wave")?(t.openBlock(),t.createElementBlock("div",dt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave")?"active":""]),onClick:e[10]||(e[10]=d=>s.handleToggleSigWaveRamp())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave-height")?"active":""]),onClick:e[11]||(e[11]=d=>s.handleToggleSigWaveHeight())},"",2)])):t.createCommentVNode("",!0)],2))),128))],4)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"available-layers flex-center",style:t.normalizeStyle({top:a.top+"px",right:a.layerToggle?"0px":"-240px"})},[t.createElementVNode("div",{class:t.normalizeClass(["list-box",a.layerToggle?"right-bar":""])},[t.createElementVNode("div",mt,[e[27]||(e[27]=t.createElementVNode("div",null,"Layers",-1)),t.createElementVNode("div",{class:"iconfont close-btn",onClick:e[12]||(e[12]=(...c)=>s.handleMenuToggle&&s.handleMenuToggle(...c))},"")]),t.createVNode(m,{style:{flex:"1"}},{default:t.withCtx(()=>[t.createElementVNode("div",pt,[t.createElementVNode("div",gt,[e[28]||(e[28]=t.createElementVNode("div",null,"Weather Layers",-1)),t.createElementVNode("div",{class:"switch flex-center",style:{"margin-right":"0"},onClick:e[13]||(e[13]=(...c)=>s.toggleAutoActive&&s.toggleAutoActive(...c))},[r.autoActive?(t.openBlock(),t.createElementBlock("i",yt,"")):(t.openBlock(),t.createElementBlock("i",ut,""))])]),t.createElementVNode("div",ft,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.weather,c=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:c.key},[c.hide?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(s.computeLayerClass(c,r.activeWeatherLayersCollected))},[t.createElementVNode("div",At,[t.createElementVNode("div",{class:"checkbox",onClick:d=>s.handleClickLayer(c)},null,8,wt),t.createElementVNode("span",{class:"name",onClick:d=>s.handleClickLayer(c)},t.toDisplayString(c.name),9,bt),c.key==="wind"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",Lt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindParticleCollected?"active":""]),onClick:e[14]||(e[14]=d=>s.handleToggleWindParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showWindFeatherCollected?"active":""]),onClick:e[15]||(e[15]=d=>s.handleToggleWindFeather())},"",2)])):t.createCommentVNode("",!0),c.key==="current"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key)?(t.openBlock(),t.createElementBlock("div",Ct,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentParticleCollected?"active":""]),onClick:e[16]||(e[16]=d=>s.handleToggleCurrentParticle())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.showCurrentIsobandCollected?"active":""]),onClick:e[17]||(e[17]=d=>s.handleToggleCurrentIsoband())},"",2)])):t.createCommentVNode("",!0),c.key==="sig-wave-height"&&r.activeWeatherLayersCollected.some(d=>d.key===c.key||d.key==="sig-wave")?(t.openBlock(),t.createElementBlock("div",vt,[t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave")?"active":""]),onClick:e[18]||(e[18]=d=>s.handleToggleSigWaveRamp())},"",2),t.createElementVNode("i",{class:t.normalizeClass(["iconfont sub-layer-icon",r.activeWeatherLayers.some(d=>d.key==="sig-wave-height")?"active":""]),onClick:e[19]||(e[19]=d=>s.handleToggleSigWaveHeight())},"",2)])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{onClick:d=>s.handleWeatherLayerCollect(c)},[c.collected?(t.openBlock(),t.createElementBlock("i",Et,"")):(t.openBlock(),t.createElementBlock("i",Bt,""))],8,xt)],2))],64))),128)),e[29]||(e[29]=t.createElementVNode("div",{class:"tip flex-start"},[t.createElementVNode("i",{class:"iconfont bookmark-icon",style:{"align-self":"flex-start",padding:"5px 5px 0 0"}},""),t.createElementVNode("div",null,"You can add the layers to your favorites. (Max 6)")],-1))])]),t.createElementVNode("div",_t,[e[30]||(e[30]=t.createElementVNode("div",{class:"layers-title"},"Other Layers",-1)),t.createElementVNode("div",kt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.layers.other,c=>{var d;return t.openBlock(),t.createElementBlock("div",{key:c.key,class:t.normalizeClass(["layer flex-between",s.computeLayerClass(c,r.activeOtherLayers)]),onClick:y=>s.handleOtherLayerPick(c)},[t.createElementVNode("div",Dt,[t.createElementVNode("div",zt,[(d=s.computeLayerClass(c,r.activeOtherLayers))!=null&&d.includes("active")?(t.openBlock(),t.createElementBlock("i",Nt,"")):(t.openBlock(),t.createElementBlock("i",Pt,""))]),t.createElementVNode("span",null,t.toDisplayString(c.name),1)])],10,It)}),128))])]),t.createElementVNode("div",Mt,[e[31]||(e[31]=t.createElementVNode("span",{class:"layers-title"},"Forecast Model",-1)),t.createElementVNode("div",St,[t.createVNode(h,{modelValue:r.source,"onUpdate:modelValue":e[20]||(e[20]=c=>r.source=c),class:"layer-radio flex-col-start-start",style:{width:"180px","align-items":"flex-start"}},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.sourceList,(c,d)=>(t.openBlock(),t.createBlock(l,{key:`source${c.name}`,value:c.name},{default:t.withCtx(()=>{var y,A,B,f,_,v;return[t.createTextVNode(t.toDisplayString(c.name)+" ",1),d!==0?(t.openBlock(),t.createElementBlock("span",Tt,t.toDisplayString(c.resolution)+"km "+t.toDisplayString(c.length)+"days",1)):t.createCommentVNode("",!0),d===0?(t.openBlock(),t.createElementBlock("div",Qt,"Provides the best forecast")):(B=(A=(y=c==null?void 0:c.update)==null?void 0:y.default)==null?void 0:A.meta)!=null&&B.initialisationTime?(t.openBlock(),t.createElementBlock("div",Vt,"Update: "+t.toDisplayString(s.computeDateZ((v=(_=(f=c==null?void 0:c.update)==null?void 0:f.default)==null?void 0:_.meta)==null?void 0:v.initialisationTime)),1)):t.createCommentVNode("",!0)]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])])]),_:1})],2)],4)])}const Ft=V(et,[["render",Ht]]),Fo="",Ot={name:"IdmWindBarb",props:{map:{type:Object},wind:{type:Object},current:{type:Object},beforeLayer:{type:String},mapProjection:{type:String},showWindFeather:{type:Boolean,default:!1},showWindParticle:{type:Boolean,default:!1},toggleParticeVersion:{type:Number},toggleVersion:{type:Number}},emits:["particle","showWindFeather"],data(){return{source:"wind-barb-source",barbs:[0,2,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100,105],empty:N.featureCollection([]),right:10,bottom:125,windBarbLoaded:!1}},watch:{"wind.version":{handler(){var i;(i=this.wind)!=null&&i.active&&this.showWindFeather?this.handleRender():this.handleClear()},deep:!0},toggleParticeVersion:{handler(){this.handleParticle()}},showWindFeather:{handler(){this.handleToggle()}}},methods:{handleParticle(){this.$emit("particle",{particle:this.showWindParticle,key:"wind",weight:1})},handleRender(){var i,e,a,o;if(!this.map)setTimeout(()=>{this.handleRender()},500);else if(this.wind){const r=new Date().valueOf();let s=0,n=0,l=this.empty;if((i=this.wind)!=null&&i.active&&(l=(e=this.wind)==null?void 0:e.data),(a=this.map)!=null&&a.getSource(this.source))(o=this.map)==null||o.getSource(this.source).setData(l),n=new Date().valueOf()-(r+s),console.log("[wind] update elapsed: ",n,", total: ",s+=n);else{this.map.addSource(this.source,{type:"geojson",data:l});for(let h=0;h<(this.barbs??[]).length-1;h++){const m=(this.barbs??[])[h]||0,c=(this.barbs??[])[h+1]||0,d=m<10?`00${m}kts`:m<100?`0${m}kts`:`${m}kts`;this.map.addLayer({id:d,type:"symbol",filter:["all",[">=","spd",m],["<","spd",c]],source:this.source,layout:{"symbol-placement":"point","icon-image":d,"icon-size":.14,"icon-offset":[0,-20],"icon-allow-overlap":!0,"icon-rotation-alignment":"map","icon-rotate":{property:"dir",stops:[[0,0],[360,360]]}},paint:{"icon-opacity":1,"text-color":"#222"}},this.beforeLayer)}this.windBarbLoaded=!0,n=new Date().valueOf()-(r+s),console.log("[wind] add elapsed: ",n,", total: ",s+=n)}}},handleToggle(){if(!this.windBarbLoaded)this.handleRender();else for(const i of this.barbs??[]){const e=i<10?`00${i}kts`:i<100?`0${i}kts`:`${i}kts`;this.map.getLayer(e)&&this.map.setLayoutProperty(e,"visibility",this.showWindFeather?"visible":"none")}},handleClear(){for(const i of this.barbs??[]){const e=i<10?`00${i}kts`:i<100?`0${i}kts`:`${i}kts`;this.map.getLayer(e)&&this.map.removeLayer(e)}this.map.getSource(this.source)&&this.map.removeSource(this.source),this.windBarbLoaded=!1}}};function Rt(i,e,a,o,r,s){return null}const jt=V(Ot,[["render",Rt]]);class Qe{constructor(e){Y(this,"map");Y(this,"mercator");Y(this,"rampColorLayer");Y(this,"rampColorSource");Y(this,"particleLayer");Y(this,"particleSource");Y(this,"rampColorCanvas");Y(this,"particleCanvas");Y(this,"ratio");this.map=e,this.mercator=new Ze,this.rampColorLayer="ramp-color-layer",this.rampColorSource="ramp-color-source",this.particleLayer="particle-layer",this.particleSource="particle-source",this.rampColorCanvas=document.createElement("canvas"),this.particleCanvas=document.createElement("canvas"),this.ratio=window.devicePixelRatio}convertNLng(e,a=0){return e>180?this.convertNLng(e-360,a+1):e<-180?this.convertNLng(e+360,a+1):[e,a]}getBoundLngLat(){const e=this.map.getBounds();return[[e._sw.lng,e._ne.lat],[e._ne.lng,e._ne.lat],[e._ne.lng,e._sw.lat],[e._sw.lng,e._sw.lat]]}getBoundPixel(){const e=this.map.getBounds(),a=this.map.getZoom()+1,o=[e._ne.lng,e._ne.lat],r=[e._sw.lng,e._sw.lat],[s,n]=this.convertNLng(o[0]),[l,h]=this.convertNLng(r[0]),[m,c]=this.mercator.px([s,o[1]],a),[d,y]=this.mercator.px([l,r[1]],a),A=Math.round(this.mercator.size*Math.pow(2,a)*(n+h));return[d,y,m+A,c]}getBoundRange(){const e=this.map.getZoom()+1,a=this.mercator.size*Math.pow(2,e),o=this.getBoundPixel();return[o[0]/a,o[2]/a,o[3]/a,o[1]/a]}getWorldCopy(e,a){const o=2**a,[r,s,n,l]=e.map(c=>~~(c/(o*256))),h=[];for(let c=l;c<=s;c++)for(let d=r;d<=n;d++)h.push([d,c]);return h.map(c=>{const d=2**a*256;return[c[0]*d,c[1]*d,d]})}resize(){let e=this.map.getSource(this.rampColorSource);e.setCoordinates(this.getBoundLngLat()),e=this.map.getSource(this.particleSource),e.setCoordinates(this.getBoundLngLat()),this.rampColorCanvas.width=this.map._canvas.clientWidth,this.rampColorCanvas.height=this.map._canvas.clientHeight,this.particleCanvas.width=this.map._canvas.clientWidth,this.particleCanvas.height=this.map._canvas.clientHeight}toggle(e){const a=this.map.getLayoutProperty(this.rampColorLayer,"visibility"),o=e?"visible":"none";a!==o&&this.map.setLayoutProperty(this.rampColorLayer,"visibility",o)}toggleParticle(e){const a=this.map.getLayoutProperty(this.particleLayer,"visibility"),o=e?"visible":"none";a!==o&&this.map.setLayoutProperty(this.particleLayer,"visibility",o)}}class ve{createShader(e,a,o){const r=e.createShader(a);if(r&&(e.shaderSource(r,o),e.compileShader(r),!e.getShaderParameter(r,e.COMPILE_STATUS)))throw new Error(e.getShaderInfoLog(r)||"error happened while create shader...");return r}createTexture(e,a,o,r,s,n,l){const h=e.createTexture();return e.bindTexture(e.TEXTURE_2D,h),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,a),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,o),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,r),s instanceof Uint8Array?e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n,l,0,e.RGBA,e.UNSIGNED_BYTE,s):e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,s),e.bindTexture(e.TEXTURE_2D,null),h}createDataBuffer(e,a,o){if(e){const r=e.createBuffer();return a==="array"?(e.bindBuffer(e.ARRAY_BUFFER,r),o&&e.bufferData(e.ARRAY_BUFFER,o,e.STATIC_DRAW)):a==="element"&&(e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,r),o&&e.bufferData(e.ELEMENT_ARRAY_BUFFER,o,e.STATIC_DRAW)),r}return null}createProgram(e,a,o){const r=e.createProgram(),s=this.createShader(e,e.VERTEX_SHADER,a),n=this.createShader(e,e.FRAGMENT_SHADER,o);if(r&&s&&n&&(e.attachShader(r,s),e.attachShader(r,n),e.linkProgram(r),!e.getProgramParameter(r,e.LINK_STATUS)))throw new Error(e.getProgramInfoLog(r)||"error happened while creating ramp color program");return r}createProgramWrapper(e,a,o){const r=this.createProgram(e,a,o);if(r){const s={program:r},n=e.getProgramParameter(r,e.ACTIVE_ATTRIBUTES);for(let h=0;h<n;h++){const m=e.getActiveAttrib(r,h);s[m.name]=e.getAttribLocation(r,m.name)}const l=e.getProgramParameter(r,e.ACTIVE_UNIFORMS);for(let h=0;h<l;h++){const m=e.getActiveUniform(r,h);s[m.name]=e.getUniformLocation(r,m.name)}return s}}setup(e,a,o=!1,r,s){const n=document.createElement("canvas");n.width=256,n.height=1;const l=n.getContext("2d");if(l&&e){const h=l==null?void 0:l.createLinearGradient(0,0,256,0);return a.forEach(([m,c])=>{h.addColorStop(m,c)}),l.fillStyle=h,l.fillRect(0,0,256,1),{canvas:n,texture:this.createTexture(e,e.LINEAR,e.LINEAR,e.CLAMP_TO_EDGE,o?new Uint8Array(l.getImageData(0,0,256,1).data):n,r,s)}}}setupParticle(e,a=1e3){const o=Math.ceil(Math.sqrt(a)),r=o*o,s=new Uint8Array(r*4);for(let c=0;c<s.length;c++)s[c]=Math.floor(Math.random()*256);const n=this.createTexture(e,e.NEAREST,e.NEAREST,e.CLAMP_TO_EDGE,s,o,o),l=this.createTexture(e,e.NEAREST,e.NEAREST,e.CLAMP_TO_EDGE,s,o,o),h=new Float32Array(r);for(let c=0;c<r;c++)h[c]=c;const m=this.createDataBuffer(e,"array",h);return{resolution:o,total:r,texture0:n,texture1:l,indexBuffer:m}}bind(e,a,o){const r=this.createProgram(e,a,o);if(r){const s=this.createDataBuffer(e,"array",void 0),n=e.getAttribLocation(r,"a_position");e.enableVertexAttribArray(n),e.vertexAttribPointer(n,2,e.FLOAT,!1,0,0);const l=new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]);this.createDataBuffer(e,"array",l);const h=e.getAttribLocation(r,"a_texCoord");return e.enableVertexAttribArray(h),e.vertexAttribPointer(h,2,e.FLOAT,!1,0,0),{program:r,aPositionBuffer:s}}return{}}bindParticle(e,a,o,r,s,n){const l=this.createProgramWrapper(e,a,o),h=this.createProgramWrapper(e,r,s),m=this.createProgramWrapper(e,r,n),c=this.createDataBuffer(e,"array",new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1])),d=e.createFramebuffer();return{particle:l,screen:h,update:m,quadBuffer:c,frameBuffer:d}}draw(e,a,o,r,s,n,l){var h,m;if(a&&o){e.resize(),a==null||a.viewport(0,0,(h=a==null?void 0:a.canvas)==null?void 0:h.width,(m=a==null?void 0:a.canvas)==null?void 0:m.height),a.clearColor(0,0,0,0),a.clear(a.COLOR_BUFFER_BIT|a.DEPTH_BUFFER_BIT);try{a.useProgram(o);const c={resolution:a.getUniformLocation(o,"u_resolution"),image:a.getUniformLocation(o,"u_image"),color:a.getUniformLocation(o,"u_color"),scale:a.getUniformLocation(o,"u_scale"),uvRange:a.getUniformLocation(o,"u_range_u_v"),sRange:a.getUniformLocation(o,"u_range_s")};c.resolution&&a.uniform2f(c.resolution,a.canvas.width*e.ratio,a.canvas.height*e.ratio),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,r),c.image&&a.uniform1i(c.image,0),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,s),c.color&&a.uniform1i(c.color,1),l!=null&&l.uvRange&&(l!=null&&l.sRange)&&(c.uvRange&&a.uniform2f(c.uvRange,l.uvRange[0],l.uvRange[1]),c.sRange&&a.uniform2f(c.sRange,l.sRange[0],l.sRange[1])),c.scale&&a.uniform1f(c.scale,(l==null?void 0:l.scale)||1);const d=e.getBoundPixel(),y=e.map.getZoom()+1,A=e.getWorldCopy(d,y);for(const B of A){const f=(B[0]-d[0])*e.ratio,_=(B[1]-d[3])*e.ratio,v=B[2]*e.ratio,[u,w,p,L]=[f,v+f,_,v+_],g=new Float32Array([u,p,w,p,u,L,u,L,w,p,w,L]);a.bindBuffer(a.ARRAY_BUFFER,n),a.bufferData(a.ARRAY_BUFFER,g,a.STATIC_DRAW),a.drawArrays(a.TRIANGLES,0,6)}}catch(c){console.log(`render failed...${c}`)}}}drawParticle(e,a,o,r,s){var n,l;a&&(a==null||a.viewport(0,0,(n=a==null?void 0:a.canvas)==null?void 0:n.width,(l=a==null?void 0:a.canvas)==null?void 0:l.height),a.disable(a.DEPTH_TEST),a.disable(a.STENCIL_TEST),a.activeTexture(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,r.texture0),this.renderScreen(e,a,r,s),this.updateParticles(e,a,r,s))}renderScreen(e,a,o,r){a.bindFramebuffer(a.FRAMEBUFFER,o.frameBuffer),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o.screenTexture,0),a.viewport(0,0,a.canvas.width,a.canvas.height),this.renderScreenTexture(a,o.backgroundTexture,o.screen,o.quadBuffer,.95),this.renderParticles(e,a,o,r),a.bindFramebuffer(a.FRAMEBUFFER,null),this.renderScreenTexture(a,o.screenTexture,o.screen,o.quadBuffer,1);const s=o.backgroundTexture;o.backgroundTexture=o.screenTexture,o.screenTexture=s}renderScreenTexture(e,a,o,r,s){e&&(e.useProgram(o.program),e.bindBuffer(e.ARRAY_BUFFER,r),e.enableVertexAttribArray(o.a_pos),e.vertexAttribPointer(o.a_pos,2,e.FLOAT,!1,0,0),e.activeTexture(e.TEXTURE2),e.bindTexture(e.TEXTURE_2D,a),e.uniform1i(o.u_screen,2),e.uniform1f(o.u_opacity,s),e.drawArrays(e.TRIANGLES,0,6))}renderParticles(e,a,o,r){if(a){a.useProgram(o.particle.program),a.bindBuffer(a.ARRAY_BUFFER,o.indexBuffer),a.enableVertexAttribArray(o.particle.a_index),a.vertexAttribPointer(o.particle.a_index,1,a.FLOAT,!1,0,0),a.activeTexture(a.TEXTURE2),a.bindTexture(a.TEXTURE_2D,o.color.texture),a.uniform1i(o.particle.u_factor,0),a.uniform1i(o.particle.u_particles,1),a.uniform1i(o.particle.u_color_ramp,2),a.uniform1f(o.particle.u_particles_resolution,o.resolution*e.ratio),a.uniform1f(o.particle.u_point,e.ratio);const s=e.getBoundRange();a.uniform4f(o.particle.u_viewport,s[0],s[1],s[2],s[3]),a.uniform2f(o.particle.u_factor_min,r.uvRange[0],r.uvRange[0]),a.uniform2f(o.particle.u_factor_max,r.uvRange[1],r.uvRange[1]),a.drawArrays(a.POINTS,0,o.total)}}updateParticles(e,a,o,r){var n,l;if(a){a.bindFramebuffer(a.FRAMEBUFFER,o.frameBuffer),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,o.texture1,0),a.viewport(0,0,o.resolution,o.resolution),a.useProgram(o.update.program),a.bindBuffer(a.ARRAY_BUFFER,o.quadBuffer),a.enableVertexAttribArray(o.update.a_pos),a.vertexAttribPointer(o.update.a_pos,2,a.FLOAT,!1,0,0),a.uniform1i(o.update.u_factor,0),a.uniform1i(o.update.u_particles,1);const h=e.getBoundRange();a.uniform4f(o.update.u_viewport,h[0],h[1],h[2],h[3]),a.uniform1f(o.update.u_rand_seed,Math.random()),a.uniform2f(o.update.u_factor_res,(n=o==null?void 0:o.image)==null?void 0:n.width,(l=o==null?void 0:o.image)==null?void 0:l.height),a.uniform2f(o.update.u_factor_min,r.uvRange[0],r.uvRange[0]),a.uniform2f(o.update.u_factor_max,r.uvRange[1],r.uvRange[1]),a.uniform1f(o.update.u_speed_factor,r.speedFactor*e.ratio),a.uniform1f(o.update.u_drop_rate,r.dropRate),a.uniform1f(o.update.u_drop_rate_bump,r.dropRateBump),a.drawArrays(a.TRIANGLES,0,6)}const s=o.texture0;o.texture0=o.texture1,o.texture1=s}resize(e,a){e.resize();const o=new Uint8Array(a.canvas.width*a.canvas.height*4).fill(0,0,a.canvas.width*a.canvas.height*4),r=this.createTexture(a,a.NEAREST,a.NEAREST,a.CLAMP_TO_EDGE,o,a.canvas.width,a.canvas.height),s=this.createTexture(a,a.NEAREST,a.NEAREST,a.CLAMP_TO_EDGE,o,a.canvas.width,a.canvas.height);return{screenTexture:r,backgroundTexture:s}}async loadImg(e){return new Promise(a=>{const o=new Blob([e],{type:e.type}),r=URL.createObjectURL(o),s=new Image;s.crossOrigin="anonymous",s.src=r,s.onload=()=>a(s)})}}class K{}Y(K,"vertexSchema",`
2
2
  //canvas 坐标系上的坐标 (x, y)
3
3
  attribute vec2 a_position; //像素坐标
4
4
  attribute vec2 a_texCoord; //纹理坐标
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--idm-white: rgba(255, 255, 255, 1);--idm-white-9: rgba(255, 255, 255, .9);--idm-white-8: rgba(255, 255, 255, .8);--idm-white-7: rgba(255, 255, 255, .7);--idm-white-6: rgba(255, 255, 255, .6);--idm-white-5: rgba(255, 255, 255, .5);--idm-white-4: rgba(255, 255, 255, .4);--idm-white-3: rgba(255, 255, 255, .3);--idm-white-2: rgba(255, 255, 255, .2);--idm-white-1: rgba(255, 255, 255, .1);--idm-black: rgba(0, 0, 0, 1);--idm-black-9: rgba(0, 0, 0, .9);--idm-black-8: rgba(0, 0, 0, .8);--idm-black-7: rgba(0, 0, 0, .7);--idm-black-6: rgba(0, 0, 0, .6);--idm-black-5: rgba(0, 0, 0, .5);--idm-black-4: rgba(0, 0, 0, .4);--idm-black-3: rgba(0, 0, 0, .3);--idm-black-2: rgba(0, 0, 0, .2);--idm-black-1: rgba(0, 0, 0, .1);--idm-gray-light: rgba(239, 239, 239, 1);--idm-gray-light2: rgba(239, 239, 249, .6);--idm-hover-color: rgba(64, 159, 255, .1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-highlight: #0033ff;--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1);--idm-success-color: #0ddd9f;--idm-success-color-light: #92f7d9;--idm-success-color-dark: #06a074;--idm-success-color-dark2: #06694c;--idm-warning-color: #ff9500;--idm-warning-color-light: #ffcc00;--idm-warning-color-dark: #c77402;--idm-danger-color: #f44336;--idm-danger-color-light: #fb796e;--idm-danger-color-dark: #ad251b;--idm-info-color: #6e6e6e;--idm-info-color-light: #969696;--idm-info-color-light2: #c0c0c0;--idm-info-color-light3: #e2e2e2;--idm-info-color-dark: #494949;--idm-dangerous: #f44336;--idm-severe: #ff9500;--idm-heavy: #ffff00;--idm-gray-light: rgba(239,239,239,.8);--idm-vessel-cargo-color: lightgreen;--idm-vessel-tanker-color: red;--idm-vessel-passenger-color: blue;--idm-vessel-other-color: lightgrey;--idm-perf-cii-a: var(--idm-success-color);--idm-perf-cii-b: var(--idm-success-color-light);--idm-perf-cii-c: var(--idm-warning-color);--idm-perf-cii-d: var(--idm-danger-color-light);--idm-perf-cii-e: var(--idm-danger-color);--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #f903d0;--idm-tropicals-super-ty: #8702f9;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);--idm-dashed-border: 1px dashed var(--idm-white-5);--idm-solid-border: 1px solid var(--idm-white-4);--idm-background-color: var(--idm-primary-color-9);--idm-background-color-dark: var(--idm-primary-color-dark);--idm-background-color-light: var(--idm-primary-color-light);--idm-background-color-light2: #f3f5f8;--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-blink-animation: blink .8s ease-out infinite alternate}:root[colorTheme=black]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .8) 80%, rgb(0, 0, 0, .8) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-right: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-left: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(117, 117, 117, .93) 30%, rgba(200, 200, 200, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(253, 253, 253), 0 0 21px rgb(226, 226, 226), 0 0 30px rgba(185, 185, 185, .4), 0 0 12px rgba(67, 67, 67, .6), 0 0 22px rgba(27, 27, 27, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(0, 0, 0, .7);--idm-primary-color-light: #757575;--idm-primary-color-light2: #a5a5a5;--idm-primary-color-dark: rgba(0, 0, 0, .8);--idm-primary-color-dark2: rgba(0, 0, 0, 1);--idm-primary-color-9: rgba(0, 0, 0, .9);--idm-primary-color-7: rgba(0, 0, 0, .7);--idm-primary-color-5: rgba(0, 0, 0, .5);--idm-primary-color-3: rgba(0, 0, 0, .3);--idm-primary-color-1: rgba(0, 0, 0, .1)}:root[colorTheme=blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1)}:root[colorTheme=dark-blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(104, 104, 226, .93) 20%, rgba(22, 49, 182, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6266e0;--idm-primary-color-light2: #89b0ff;--idm-primary-color-dark: #00224e;--idm-primary-color-dark2: #021a39;--idm-primary-color-9: rgba(19, 47, 108, .9);--idm-primary-color-7: rgba(19, 47, 108, .7);--idm-primary-color-5: rgba(19, 47, 108, .5);--idm-primary-color-3: rgba(19, 47, 108, .3);--idm-primary-color-1: rgba(19, 47, 108, .1)}@font-face{font-family:iconfont;src:url(https://iconfont.idmwx.com/iconfont.woff2) format("woff2"),url(https://iconfont.idmwx.com/iconfont.woff) format("woff"),url(https://iconfont.idmwx.com/iconfont.ttf) format("truetype"),url(https://iconfont.idmwx.com/iconfont.svg?#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-end{display:flex;align-items:center;justify-content:flex-end}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between,.flex-space{display:flex;align-items:center;justify-content:space-between}.flex-around{display:flex;align-items:center;justify-content:space-around}.flex-evenly{display:flex;align-items:center;justify-content:space-evenly}.flex-col-center-center{display:flex;flex-direction:column;justify-content:center;align-items:center}.flex-col-start-center{display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.flex-col-start-start{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.flex-col-end-center{display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.flex-col-between-center{display:flex;flex-direction:column;justify-content:space-between;align-items:center}.flex-col-around-center{display:flex;flex-direction:column;justify-content:space-around;align-items:center}.flex-col-center-start{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.flex-col-center-end{display:flex;flex-direction:column;justify-content:center;align-items:flex-end}.flex{flex:1}.dropdown{position:relative;display:inline-block!important}.dropdown .dropdown-content{display:none;position:absolute;z-index:1}.dropdown:hover .dropdown-content{display:block}.loading{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--idm-black-5);z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column}.loading i{font-size:30px;color:var(--idm-white);margin-bottom:16px;animation:rotate 2s linear infinite}.loading div{color:var(--idm-white);font-size:16px}@keyframes blink{0%{box-shadow:0 0 20px var(--idm-warning-color-dark) inset}to{box-shadow:0 0 20px var(--idm-success-color) inset}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.idm-gl4-layer .fade-enter-active,.idm-gl4-layer .fade-leave-active{transition:opacity .4s}.idm-gl4-layer .fade-enter,.idm-gl4-layer .fade-leave-to{opacity:0}.idm-gl4-layer .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out;z-index:2;border-radius:5px;box-shadow:0 2px 12px #0003}.idm-gl4-layer .menu-bar-box .bar-item{position:relative;border-radius:5px;background:var(--idm-white);cursor:pointer}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon{padding:8px;display:flex}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon span{font-size:20px;font-weight:600;color:var(--idm-black-8)}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon.active{background:var(--idm-primary-color)}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon.active span{color:var(--idm-white)}.idm-gl4-layer .active-layers{position:absolute;max-width:160px;font-size:14px;padding:2px 5px;background:var(--idm-white);border-radius:5px;box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.idm-gl4-layer .active-layers .layer{width:auto;padding:4px 5px}.idm-gl4-layer .active-layers .layer .name{font-size:14px}.idm-gl4-layer .available-layers{position:absolute;height:calc(100vh - 120px);box-sizing:border-box;transition:all .4s ease-in-out}.idm-gl4-layer .available-layers .header-box{font-size:16px;font-weight:600;padding:5px 10px 10px;color:var(--idm-black-8)}.idm-gl4-layer .available-layers .header-box .close-btn{font-size:20px;font-weight:400;color:var(--idm-black-2);cursor:pointer}.idm-gl4-layer .available-layers .header-box .close-btn:hover{color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box{height:inherit;width:200px;overflow-y:auto;color:var(--idm-black-8);background:var(--idm-white);display:flex;flex-direction:column;box-shadow:0 2px 12px #0003;z-index:1}.idm-gl4-layer .available-layers .list-box .layers-title{font-size:14px;font-weight:600;padding:5px 10px;color:var(--idm-black-8)}.idm-gl4-layer .available-layers .list-box .layers-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0 10px;font-size:14px}.idm-gl4-layer .available-layers .list-box .layers-body .layer{width:100%}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio{margin:5px 0}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio{height:44px;color:var(--idm-black-8);display:flex;align-items:flex-start;justify-content:flex-start}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio .el-radio__inner{margin-top:3px}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio .radio-tip{font-size:12px;color:var(--idm-info-color)}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio.is-checked .el-radio__inner{background:var(--idm-primary-color);border-color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio.is-checked .el-radio__label{color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box .layers-body .tip{margin-left:-5px;margin-bottom:2px;font-size:12px;color:var(--idm-info-color)}.idm-gl4-layer .available-layers .list-box .layers-body .tip .bookmark-icon{color:var(--idm-warning-color)}.idm-gl4-layer .layer{display:inline-flex;align-items:center;padding:4px 0;color:var(--idm-black-8);font-size:14px;cursor:pointer}.idm-gl4-layer .layer .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2);box-sizing:border-box}.idm-gl4-layer .layer .bookmark-icon{font-size:15px}.idm-gl4-layer .layer .bookmark-icon.active{display:inline-block;color:var(--idm-warning-color)}.idm-gl4-layer .layer .bookmark-icon.inactive{display:none}.idm-gl4-layer .layer .sub-layer-icon{margin-left:6px;font-size:16px}.idm-gl4-layer .layer .sub-layer-icon.active{color:var(--idm-primary-color)}.idm-gl4-layer .layer.active .checkbox{border:1px solid var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl4-layer .layer.active .checkbox:after{position:relative;content:"✔";color:var(--idm-white);font-size:10px;display:flex;align-items:center;justify-content:center}.idm-gl4-layer .layer.active .name{color:var(--idm-primary-color)}.idm-gl4-layer .layer.disabled{color:var(--idm-black-4);cursor:not-allowed}.idm-gl4-layer .layer.disabled .checkbox{cursor:not-allowed;border:1px solid var(--idm-black-2);opacity:.5}.idm-gl4-layer .layer:hover .bookmark-icon.inactive{display:inline-block}.idm-gl4-layer .switch{font-size:24px;height:19px;margin-right:10px;color:var(--idm-black-2);cursor:pointer}.idm-gl4-layer .switch .active{color:var(--idm-primary-color)}.idm-gl4-layer .card-bg{background:var(--idm-gray-light2);border-radius:3px;margin:8px}.idm-gl4-layer .card-bg:first-child{margin-top:0}.wind-tool-bars{transition:all .4s ease-in-out;padding:2px 5px;border-radius:4px;background:var(--idm-white);box-shadow:0 2px 12px #0003}.wind-tool-bars .item-bar{cursor:pointer;padding:4px 10px}.wind-tool-bars .item-bar.active .checkbox{border:var(--idm-primary-color);background:var(--idm-primary-color)}.wind-tool-bars .item-bar.active .checkbox:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.wind-tool-bars .item-bar.active span{font-size:12px;color:var(--idm-primary-color)}.wind-tool-bars .item-bar .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2)}.wind-tool-bars .item-bar span{font-size:12px;color:var(--idm-black-8)}.legend-bars[data-v-24e5434b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(61,110,163),rgb(74,148,170),rgb(74,146,148),rgb(77,142,124),rgb(76,164,76),rgb(103,164,54),rgb(162,135,64),rgb(162,109,92),rgb(141,63,92),rgb(151,75,145),rgb(95,100,160),rgb(91,136,161),rgb(91,136,161));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-24e5434b]{font-size:12px;text-align:center;color:var(--idm-white-8);width:32px}.current-tool-bars{transition:all .4s ease-in-out;background:var(--idm-white);padding:2px 5px;border-radius:4px;box-shadow:0 2px 12px #0003}.current-tool-bars .item-bar{cursor:pointer;padding:4px 10px}.current-tool-bars .item-bar.active .checkbox{border:var(--idm-primary-color);background:var(--idm-primary-color)}.current-tool-bars .item-bar.active .checkbox:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.current-tool-bars .item-bar.active span{font-size:12px;color:var(--idm-primary-color)}.current-tool-bars .item-bar .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2)}.current-tool-bars .item-bar span{font-size:12px;color:var(--idm-black-8)}.legend-bars[data-v-02a8206f]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(64,127,115),rgb(58,164,58),rgb(191,182,67),rgb(197,154,68),rgb(160,70,94),rgb(138,84,166),rgb(82,113,165),rgb(84,142,152),rgb(150,181,184),rgb(195,194,194),rgb(195,194,194));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-02a8206f]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.legend-bars[data-v-cdd80281]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(48,128,164),rgb(48,99,142),rgb(52,101,166),rgb(56,104,192),rgb(56,82,169),rgb(57,61,143),rgb(134,48,48),rgb(194,77,91),rgb(192,118,105),rgb(192,163,157),rgb(192,163,157));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-cdd80281]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-ae31802c]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(220,243,252),rgb(220,243,252),rgb(86,169,230),rgb(47,226,155),rgb(47,226,155),rgb(47,226,155),rgb(213,253,37),rgb(213,253,37),rgb(213,253,37),rgb(230,176,39),rgb(230,176,39),rgb(230,84,39),rgb(230,84,39));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-ae31802c]{font-size:12px;text-align:center;color:var(--idm-info-color);width:20px}.legend-bars[data-v-026a5595]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(255,255,255),rgb(53,125,177),rgb(33,145,140),rgb(45,178,125),rgb(112,207,87),rgb(253,231,37));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-026a5595]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-348d48fb]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(4,6,19),rgb(51,50,102),rgb(51,50,102),rgb(63,82,158),rgb(63,82,158),rgb(66,123,183),rgb(66,123,183),rgb(92,161,197),rgb(92,161,197),rgb(134,199,212),rgb(134,199,212),rgb(234,253,253));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-348d48fb]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.idm-tropical-gl4[data-v-6a684608]{bottom:unset;top:unset;background:var(--idm-white-9);padding:10px;border-radius:5px;box-shadow:0 2px 12px #0003;z-index:5}.idm-tropical-gl4 .header-box[data-v-6a684608]{min-width:360px;margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.idm-tropical-gl4 .header-box .close-btn[data-v-6a684608]{position:relative;height:0px;text-align:right;font-size:20px;color:var(--idm-black-2);cursor:pointer}.idm-tropical-gl4 .header-box .close-btn[data-v-6a684608]:hover{color:var(--idm-primary-color)}.idm-tropical-gl4 .header-box .main[data-v-6a684608]{font-size:16px}.idm-tropical-gl4 .header-box .sub[data-v-6a684608]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.idm-tropical-gl4 .main-box[data-v-6a684608]{min-width:360px;color:var(--idm-black-8);overflow-y:auto;box-sizing:border-box;font-size:12px;z-index:4}.idm-tropical-gl4 .main-box .content[data-v-6a684608]{padding:5px 0;border-radius:5px;background:var(--idm-gray-light)}.idm-tropical-gl4 .main-box .row[data-v-6a684608]{width:100%;padding:4px 10px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}.idm-tropical-gl4 .main-box .row .col[data-v-6a684608]{display:flex;align-items:center;justify-content:space-between}.idm-tropical-gl4 .main-box .row .col label[data-v-6a684608]{width:82px;margin-right:4px;color:var(--idm-info-color)}.idm-tropical-gl4 .main-box .row .col.col-24[data-v-6a684608]{width:100%}.idm-tropical-gl4 .main-box .row .col.col-left[data-v-6a684608],.idm-tropical-gl4 .main-box .row .col.col-right[data-v-6a684608]{width:50%}.idm-tropical-gl4 .main-box .row .col .icon[data-v-6a684608]{font-size:30px;color:var(--idm-black-4)}.idm-tropical-gl4 .main-box .row .col .icon.active[data-v-6a684608]{color:var(--idm-primary-color)}.forecast-models[data-v-6a684608]{display:flex;justify-content:flex-end;flex:1;margin-left:5px;flex-wrap:wrap}.forecast-models .model[data-v-6a684608]{font-size:12px;padding:0 6px 4px;display:flex;border:1px solid var(--idm-primary-color);cursor:pointer}.forecast-models .model span[data-v-6a684608]{border-bottom:2px dashed #f2a0a0}.forecast-models .model span.cma[data-v-6a684608]{border-color:#e2ea03cc}.forecast-models .model span.jma[data-v-6a684608]{border-color:#01d2b7cc}.forecast-models .model span.ecmwf[data-v-6a684608]{border-color:#f582f2cc}.forecast-models .model span.ukm[data-v-6a684608]{border-color:#f5bb47cc}.forecast-models .model span.noaa-at[data-v-6a684608],.forecast-models .model span.noaa-ep[data-v-6a684608]{border-color:#9758fbcc}.forecast-models .model.active[data-v-6a684608]{border:1px solid var(--idm-primary-color);background-color:var(--idm-primary-color);color:var(--idm-white)}.forecast-models .model[data-v-6a684608]:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.forecast-models .model.center-child[data-v-6a684608]{border-left:1px solid var(--idm-primary-color);border-right:1px solid var(--idm-primary-color)}.forecast-models .model[data-v-6a684608]:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.legend[data-v-6a684608]{display:flex;align-items:center;color:var(--idm-info-color)}.legend .icon[data-v-6a684608]{height:14px;width:14px;border-radius:50%;border:3px solid #fff;margin-right:3px}.legend .icon.td[data-v-6a684608]{background-color:var(--idm-tropicals-td)}.legend .icon.ts[data-v-6a684608]{background-color:var(--idm-tropicals-ts)}.legend .icon.sts[data-v-6a684608]{background-color:var(--idm-tropicals-sts)}.legend .icon.ty[data-v-6a684608]{background-color:var(--idm-tropicals-ty)}.legend .icon.sty[data-v-6a684608]{background-color:var(--idm-tropicals-sty)}.legend .icon.supper-ty[data-v-6a684608]{background-color:var(--idm-tropicals-super-ty)}.legend .icon.r7[data-v-6a684608]{border:1.5px solid var(--idm-tropicals-r7)}.legend .icon.r10[data-v-6a684608]{border:1.5px solid var(--idm-tropicals-r10)}.legend .icon.history[data-v-6a684608]{border:none;border-radius:0;height:4px;background:var(--idm-black-5)}.legend .button[data-v-6a684608]{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid var(--idm-primary-color);color:var(--idm-primary-color)}.more[data-v-6a684608]{display:flex;align-items:center;justify-content:flex-end;color:var(--idm-primary-color);font-weight:700;margin-top:5px;cursor:pointer}.legend-bars[data-v-e83717bd]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgba(59,126,162,0),rgb(172,210,255),rgb(172,210,255),rgb(3,248,103),rgb(14,201,3),rgb(190,226,2),rgb(248,1,1),rgb(197,5,58),rgb(197,5,58));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-e83717bd]{font-size:12px;text-align:center;color:var(--idm-white);width:35px}.legend-bars[data-v-1c8a9237]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(208,56,56),rgb(208,56,56),rgb(190,226,2),rgb(190,226,2),rgb(4,210,64),rgb(4,210,64),rgb(172,210,255),rgb(172,210,255));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-1c8a9237]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.legend-bars[data-v-8974924d]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-8974924d]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-d709ba86]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(150,209,216),rgb(129,204,197),rgb(103,180,186),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-d709ba86]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.point-meteo[data-v-fa02c365]{bottom:unset;z-index:9;top:0!important}.point-meteo .meteo-box[data-v-fa02c365]{position:absolute;top:0;left:5px;width:480px;font-size:13px;color:var(--idm-black-8);background-color:var(--idm-white);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-top-right-radius:5px;border-bottom-right-radius:5px;box-shadow:0 2px 12px #0003;font-family:Microsoft YaHei,Helvetica Neue,Helvetica}.point-meteo .meteo-box .header-box[data-v-fa02c365]{padding:8px 5px;font-size:16px;box-sizing:border-box;color:var(--idm-black-8);border-top-right-radius:5px;background-color:var(--idm-gray-light)}.point-meteo .meteo-box .header-box .lnglat[data-v-fa02c365]{margin:0 5px}.point-meteo .meteo-box .header-box .close[data-v-fa02c365]{font-size:18px;color:var(--idm-black-3);cursor:pointer}.point-meteo .meteo-box .header-box .close[data-v-fa02c365]:hover{color:var(--idm-primary-color)}.point-meteo .meteo-box .header-box .toggle[data-v-fa02c365]{margin-right:10px;font-size:22px;color:var(--idm-primary-color);cursor:pointer}.point-meteo .meteo-box .main-box[data-v-fa02c365]{padding:10px;height:300px;background:var(--idm-white);color:var(--idm-black-7);background-size:cover;background-position:top left}.point-meteo .meteo-box .main-box.night-bg[data-v-fa02c365]{color:var(--idm-white);background-image:url(https://osshz.idmwx.com/asset/weather/night.jpg)}.point-meteo .meteo-box .main-box.night-bg .gray[data-v-fa02c365]{color:var(--idm-white)!important}.point-meteo .meteo-box .main-box.day-bg[data-v-fa02c365]{color:var(--idm-black-7);background:#fff}.point-meteo .meteo-box .main-box.font-color-white[data-v-fa02c365]{color:var(--idm-white)}.point-meteo .meteo-box .main-box .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .info[data-v-fa02c365]{font-size:13px;opacity:.8}.point-meteo .meteo-box .main-box .summary-row[data-v-fa02c365]{margin-bottom:10px}.point-meteo .meteo-box .main-box .summary-row .summary .icon[data-v-fa02c365]{height:60px;width:60px;cursor:pointer}.point-meteo .meteo-box .main-box .summary-row .summary .temp[data-v-fa02c365]{font-size:28px;margin:0 20px 0 5px}.point-meteo .meteo-box .main-box .summary-row .summary .des[data-v-fa02c365]{font-size:13px}.point-meteo .meteo-box .main-box .summary-row .summary label[data-v-fa02c365]{margin-right:2px}.point-meteo .meteo-box .main-box .summary-row .date[data-v-fa02c365]{margin:0 5px;font-size:14px}.point-meteo .meteo-box .main-box .summary-row .row[data-v-fa02c365]{padding:3px 0;box-sizing:border-box}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item[data-v-fa02c365]{width:max-content;padding:3px 20px;margin-bottom:5px;font-size:14px;cursor:pointer}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item.active[data-v-fa02c365]{color:#409eff;font-weight:600;border-bottom:2px solid #409EFF}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item[data-v-fa02c365]:hover{color:#409eff;font-weight:600}.point-meteo .meteo-box .main-box .detail-box .basic-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table[data-v-fa02c365]{width:100%;height:152px;font-size:12px}.point-meteo .meteo-box .main-box .detail-box .basic-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table tr[data-v-fa02c365]{width:100%}.point-meteo .meteo-box .main-box .detail-box .basic-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table td[data-v-fa02c365]{text-align:center;height:18px;line-height:15px;width:43px}.point-meteo .meteo-box .main-box .detail-box .basic-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table th[data-v-fa02c365]{font-weight:400}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-title[data-v-fa02c365]{text-align:right!important;width:95px}.point-meteo .meteo-box .main-box .detail-box .basic-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .unit[data-v-fa02c365]{display:inline-block;width:24px;padding:0 5px;text-align:left}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide[data-v-fa02c365]{padding:5px 40px}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide td[data-v-fa02c365]{width:max-content!important}.point-meteo .meteo-box .main-box .detail-box .basic-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .weather-icon[data-v-fa02c365]{width:22px;height:22px;cursor:pointer}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon[data-v-fa02c365]{font-size:10px;margin-right:1px}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.wind[data-v-fa02c365]{color:#60c43e}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.windwave[data-v-fa02c365]{color:#017c8a}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.swell[data-v-fa02c365]{color:#21baa3}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.current[data-v-fa02c365]{color:#bc6cfe}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.orange[data-v-fa02c365]{color:var(--idm-warning-color-light)}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.gray[data-v-fa02c365]{color:var(--idm-black-6)}.point-meteo .meteo-box .main-box .more[data-v-fa02c365]{margin-top:5px;padding:5px 10px 5px 0;text-align:right;font-size:14px;font-weight:600;font-style:italic;cursor:pointer}.point-meteo .meteo-box .main-box .more.day[data-v-fa02c365]{color:var(--idm-black-7);border-top:1px solid var(--idm-black-2)}.point-meteo .meteo-box .main-box .more.night[data-v-fa02c365]{color:var(--idm-white);border-top:1px solid var(--idm-white-2)}.point-meteo .meteo-box .main-box .more[data-v-fa02c365]:hover{font-style:normal;color:#409eff}.point-meteo[data-v-fa02c365]:after{display:block;margin-bottom:360px;width:8px;height:8px;border-radius:50%;content:"";background-color:var(--idm-gray-light);box-shadow:0 2px 12px #000}.point-meteo[data-v-fa02c365]:before{display:block;content:"";width:2px;height:360px;margin-left:3px;border-left:2px solid var(--idm-gray-light);box-shadow:0 2px 12px #000}#idm-gl4-zone-info{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:10px;border-radius:5px;cursor:default;z-index:1000;height:fit-content;max-height:900px;overflow-y:auto;font-size:13px;box-shadow:0 2px 12px #0003}#idm-gl4-zone-info .rich-context{width:500px}#idm-gl4-zone-info .close{font-size:20px;position:absolute;right:10px;top:10px;color:var(--idm-black-2);border-top-right-radius:6px;cursor:pointer}#idm-gl4-zone-info .close:hover{color:var(--idm-primary-color)}#port-info[data-v-2fc5fc5e]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:5px 10px;border-radius:6px;cursor:default;height:fit-content;box-shadow:0 2px 12px #0003;z-index:7}#port-info .port-box[data-v-2fc5fc5e]{min-width:240px;width:max-content}#port-info .port-box .flex-start[data-v-2fc5fc5e]{line-height:2}#port-info .port-box .flex-start label[data-v-2fc5fc5e]{color:var(--idm-info-color);margin-right:10px;width:50px}#port-info .port-box .flex-start span[data-v-2fc5fc5e]{flex:1;flex-wrap:wrap;text-align:justify-all;color:var(--idm-black-8)}#port-info .port-box .flex-start span.link[data-v-2fc5fc5e]{cursor:pointer;text-decoration:underline}#port-info .port-box .flex-start span.link[data-v-2fc5fc5e]:hover{font-weight:600}#port-info .port-box .meteo-forecast[data-v-2fc5fc5e]{color:var(--idm-primary-color);font-size:14px;font-weight:700;cursor:pointer}#port-info .close[data-v-2fc5fc5e]{position:relative;text-align:right;height:0;color:var(--idm-black-2);font-size:20px;cursor:pointer;z-index:8}#port-info .close[data-v-2fc5fc5e]:hover{color:var(--idm-primary-color)}.lat-lng-tip[data-v-ad66a24c]{position:absolute;padding:2px 10px;border-radius:5px;color:var(--idm-primary-color);font-size:12px;top:unset;background:var(--idm-white);box-shadow:0 2px 12px #00000080;transition:all .4s ease-in-out}.menu-bar-box[data-v-8ff97b39]{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out}.menu-bar-box .bar-item[data-v-8ff97b39]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]{padding:8px;display:flex}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.menu-bar-box .bar-item .menu-icon span[data-v-8ff97b39]{font-size:18px;font-weight:500;color:var(--idm-black-8)}.menu-bar-box .bar-item .menu-icon.active[data-v-8ff97b39]{background:var(--idm-primary-color)}.menu-bar-box .bar-item .menu-icon.active span[data-v-8ff97b39]{color:var(--idm-white)}.idm-gl2-enc-legend-bars{margin-bottom:150px;border-radius:5px;background:var(--idm-background-linear-gradient-top)}.idm-gl2-enc-legend-bars div{padding:4px 8px;cursor:pointer;color:var(--idm-white-9)}.idm-gl2-enc-legend-bars div.active{color:var(--idm-success-color)}:root{--idm-gl-box-shadow-color: rgba(0, 0, 0, .5);--idm-gl-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .04), 0px 8px 20px rgba(0, 0, 0, .08);--idm-gl-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .12);--idm-gl-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .12);--idm-gl-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .08), 0px 12px 32px rgba(0, 0, 0, .12), 0px 8px 16px -8px rgba(0, 0, 0, .16)}.point-marker{pointer-events:none!important}.point-marker .marker-circle{pointer-events:inherit;width:12px;height:12px;border-radius:50%;border:2px solid var(--idm-white);background:var(--idm-danger-color)}.point-marker .marker-circle:hover{cursor:pointer}.point-marker.closed{pointer-events:auto!important}.point-summary-marker,.point-contextmenu-marker{color:var(--idm-white);font-size:12px;background:var(--idm-danger-color);border:2px solid var(--idm-white);padding:2px 5px;border-radius:5px;cursor:pointer}.point-summary-marker .marker-close,.point-contextmenu-marker .marker-close{pointer-events:auto;position:absolute;background:var(--idm-danger-color);border:1px dashed var(--idm-white);display:flex;align-items:center;justify-content:center;width:20px;height:20px;right:-17px;top:-17px;cursor:pointer;font-size:20px}.tip-marker{color:var(--idm-white);font-size:12px;text-shadow:var(--idm-text-shadow);background-color:var(--idm-black-6);padding:2px 5px;border-radius:5px;cursor:pointer}.tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.tip-marker .marker-label:last-child{border-bottom:none}.tip-marker .marker-label b{font-weight:600;color:var(--idm-danger-color)}.hurricane-hourly-marker .iconfont{font-size:34px!important;color:var(--idm-danger-color)}.hurricane-hourly-marker svg{height:34px;width:34px}.hurricane-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.hurricane-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.hurricane-hourly-marker .center.south{animation:clockwise 2s linear infinite}@keyframes clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes anticlockwise{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}body{margin:0;padding:0;overflow:hidden;font-family:Microsoft YaHei}.idm-gl{box-sizing:border-box;height:100vh;width:100vw}.idm-gl #map{position:absolute;width:100%;height:100%}.idm-gl .mapboxgl-ctrl-bottom-right{display:none}.idm-gl .mapboxgl-ctrl-bottom-left{display:none!important}.idm-gl .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-logo{display:none}
1
+ @charset "UTF-8";:root{--idm-white: rgba(255, 255, 255, 1);--idm-white-9: rgba(255, 255, 255, .9);--idm-white-8: rgba(255, 255, 255, .8);--idm-white-7: rgba(255, 255, 255, .7);--idm-white-6: rgba(255, 255, 255, .6);--idm-white-5: rgba(255, 255, 255, .5);--idm-white-4: rgba(255, 255, 255, .4);--idm-white-3: rgba(255, 255, 255, .3);--idm-white-2: rgba(255, 255, 255, .2);--idm-white-1: rgba(255, 255, 255, .1);--idm-black: rgba(0, 0, 0, 1);--idm-black-9: rgba(0, 0, 0, .9);--idm-black-8: rgba(0, 0, 0, .8);--idm-black-7: rgba(0, 0, 0, .7);--idm-black-6: rgba(0, 0, 0, .6);--idm-black-5: rgba(0, 0, 0, .5);--idm-black-4: rgba(0, 0, 0, .4);--idm-black-3: rgba(0, 0, 0, .3);--idm-black-2: rgba(0, 0, 0, .2);--idm-black-1: rgba(0, 0, 0, .1);--idm-gray-light: rgba(239, 239, 239, 1);--idm-gray-light2: rgba(239, 239, 249, .6);--idm-hover-color: rgba(64, 159, 255, .1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-highlight: #0033ff;--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1);--idm-success-color: #0ddd9f;--idm-success-color-light: #92f7d9;--idm-success-color-dark: #06a074;--idm-success-color-dark2: #06694c;--idm-warning-color: #ff9500;--idm-warning-color-light: #ffcc00;--idm-warning-color-dark: #c77402;--idm-danger-color: #f44336;--idm-danger-color-light: #fb796e;--idm-danger-color-dark: #ad251b;--idm-info-color: #6e6e6e;--idm-info-color-light: #969696;--idm-info-color-light2: #c0c0c0;--idm-info-color-light3: #e2e2e2;--idm-info-color-dark: #494949;--idm-dangerous: #f44336;--idm-severe: #ff9500;--idm-heavy: #ffff00;--idm-gray-light: rgba(239,239,239,.8);--idm-vessel-cargo-color: lightgreen;--idm-vessel-tanker-color: red;--idm-vessel-passenger-color: blue;--idm-vessel-other-color: lightgrey;--idm-perf-cii-a: var(--idm-success-color);--idm-perf-cii-b: var(--idm-success-color-light);--idm-perf-cii-c: var(--idm-warning-color);--idm-perf-cii-d: var(--idm-danger-color-light);--idm-perf-cii-e: var(--idm-danger-color);--idm-tropicals-td: #03f869;--idm-tropicals-ts: #f2f202;--idm-tropicals-sts: #ff9100;--idm-tropicals-ty: #f44336;--idm-tropicals-sty: #f903d0;--idm-tropicals-super-ty: #8702f9;--idm-tropicals-r7: #ff9100;--idm-tropicals-r10: #f44336;--idm-text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);--idm-dashed-border: 1px dashed var(--idm-white-5);--idm-solid-border: 1px solid var(--idm-white-4);--idm-background-color: var(--idm-primary-color-9);--idm-background-color-dark: var(--idm-primary-color-dark);--idm-background-color-light: var(--idm-primary-color-light);--idm-background-color-light2: #f3f5f8;--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-blink-animation: blink .8s ease-out infinite alternate}:root[colorTheme=black]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .8) 80%, rgb(0, 0, 0, .8) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-right: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-background-linear-gradient-left: linear-gradient(to top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, .7) 70%, rgb(0, 0, 0, .7) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(117, 117, 117, .93) 30%, rgba(200, 200, 200, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(253, 253, 253), 0 0 21px rgb(226, 226, 226), 0 0 30px rgba(185, 185, 185, .4), 0 0 12px rgba(67, 67, 67, .6), 0 0 22px rgba(27, 27, 27, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(0, 0, 0, .7);--idm-primary-color-light: #757575;--idm-primary-color-light2: #a5a5a5;--idm-primary-color-dark: rgba(0, 0, 0, .8);--idm-primary-color-dark2: rgba(0, 0, 0, 1);--idm-primary-color-9: rgba(0, 0, 0, .9);--idm-primary-color-7: rgba(0, 0, 0, .7);--idm-primary-color-5: rgba(0, 0, 0, .5);--idm-primary-color-3: rgba(0, 0, 0, .3);--idm-primary-color-1: rgba(0, 0, 0, .1)}:root[colorTheme=blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(41, 32, 165) 0%, rgba(44, 93, 184) 80%, rgba(32, 90, 165) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(19, 23, 152, .85) 0%, rgba(44, 93, 184, .85) 80%, rgba(64, 110, 196, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(142, 163, 255, .93) 20%, rgb(90 67 193 / 93%) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6c8ad9;--idm-primary-color-light2: #a7c4ff;--idm-primary-color-dark: #053a7e;--idm-primary-color-dark2: #002e6b;--idm-primary-color-9: rgba(42, 87, 183, .9);--idm-primary-color-8: rgba(42, 87, 183, .8);--idm-primary-color-7: rgba(42, 87, 183, .7);--idm-primary-color-6: rgba(42, 87, 183, .6);--idm-primary-color-5: rgba(42, 87, 183, .5);--idm-primary-color-4: rgba(42, 87, 183, .4);--idm-primary-color-3: rgba(42, 87, 183, .3);--idm-primary-color-2: rgba(42, 87, 183, .2);--idm-primary-color-1: rgba(42, 87, 183, .1)}:root[colorTheme=dark-blue]{--idm-background-opaque-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-top: linear-gradient(to top, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-bottom: linear-gradient(to bottom, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-right: linear-gradient(to right, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-background-linear-gradient-left: linear-gradient(to left, rgba(16, 22, 79, .85) 0%, rgba(15, 41, 89, .85) 80%, rgba(19, 47, 108, .85) 100%);--idm-active-background-light: linear-gradient(130deg, rgba(104, 104, 226, .93) 20%, rgba(22, 49, 182, .93) 100%);--idm-active-text-shadow-light: 0 0 7px rgb(194, 255, 247), 0 0 21px rgb(194, 255, 247), 0 0 30px rgba(182, 211, 207, .4), 0 0 12px rgba(15, 115, 223, .6), 0 0 22px rgba(15, 115, 223, .8), 0 0 38px rgba(15, 115, 223, .9), 0 0 60px rgba(15, 115, 223, 1);--idm-primary-color: rgba(42, 87, 183, 1);--idm-primary-color-light: #6266e0;--idm-primary-color-light2: #89b0ff;--idm-primary-color-dark: #00224e;--idm-primary-color-dark2: #021a39;--idm-primary-color-9: rgba(19, 47, 108, .9);--idm-primary-color-7: rgba(19, 47, 108, .7);--idm-primary-color-5: rgba(19, 47, 108, .5);--idm-primary-color-3: rgba(19, 47, 108, .3);--idm-primary-color-1: rgba(19, 47, 108, .1)}@font-face{font-family:iconfont;src:url(https://iconfont.idmwx.com/iconfont.woff2) format("woff2"),url(https://iconfont.idmwx.com/iconfont.woff) format("woff"),url(https://iconfont.idmwx.com/iconfont.ttf) format("truetype"),url(https://iconfont.idmwx.com/iconfont.svg?#iconfont) format("svg")}.iconfont{font-family:iconfont!important;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-end{display:flex;align-items:center;justify-content:flex-end}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between,.flex-space{display:flex;align-items:center;justify-content:space-between}.flex-around{display:flex;align-items:center;justify-content:space-around}.flex-evenly{display:flex;align-items:center;justify-content:space-evenly}.flex-col-center-center{display:flex;flex-direction:column;justify-content:center;align-items:center}.flex-col-start-center{display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.flex-col-start-start{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.flex-col-end-center{display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.flex-col-between-center{display:flex;flex-direction:column;justify-content:space-between;align-items:center}.flex-col-around-center{display:flex;flex-direction:column;justify-content:space-around;align-items:center}.flex-col-center-start{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.flex-col-center-end{display:flex;flex-direction:column;justify-content:center;align-items:flex-end}.flex{flex:1}.dropdown{position:relative;display:inline-block!important}.dropdown .dropdown-content{display:none;position:absolute;z-index:1}.dropdown:hover .dropdown-content{display:block}.loading{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--idm-black-5);z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column}.loading i{font-size:30px;color:var(--idm-white);margin-bottom:16px;animation:rotate 2s linear infinite}.loading div{color:var(--idm-white);font-size:16px}@keyframes blink{0%{box-shadow:0 0 20px var(--idm-warning-color-dark) inset}to{box-shadow:0 0 20px var(--idm-success-color) inset}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.idm-gl4-layer .fade-enter-active,.idm-gl4-layer .fade-leave-active{transition:opacity .4s}.idm-gl4-layer .fade-enter,.idm-gl4-layer .fade-leave-to{opacity:0}.idm-gl4-layer .menu-bar-box{position:absolute;overflow-y:hidden;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out;z-index:2;border-radius:5px;box-shadow:0 2px 12px #0003}.idm-gl4-layer .menu-bar-box .bar-item{position:relative;border-radius:5px;background:var(--idm-white);cursor:pointer}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon{padding:8px;display:flex}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon span{font-size:20px;font-weight:600;color:var(--idm-black-8)}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon.active{background:var(--idm-primary-color)}.idm-gl4-layer .menu-bar-box .bar-item .menu-icon.active span{color:var(--idm-white)}.idm-gl4-layer .active-layers{position:absolute;max-width:160px;font-size:14px;padding:2px 5px;background:var(--idm-white);border-radius:5px;box-shadow:0 2px 12px #0003;transition:all .4s ease-in-out}.idm-gl4-layer .active-layers .layer{width:auto;padding:4px 5px}.idm-gl4-layer .active-layers .layer .name{font-size:14px}.idm-gl4-layer .available-layers{position:absolute;height:calc(100vh - 120px);box-sizing:border-box;transition:all .4s ease-in-out}.idm-gl4-layer .available-layers .header-box{font-size:16px;font-weight:600;padding:5px 10px 10px;color:var(--idm-black-8)}.idm-gl4-layer .available-layers .header-box .close-btn{font-size:20px;font-weight:400;color:var(--idm-black-2);cursor:pointer}.idm-gl4-layer .available-layers .header-box .close-btn:hover{color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box{height:inherit;width:200px;overflow-y:auto;color:var(--idm-black-8);background:var(--idm-white);display:flex;flex-direction:column;box-shadow:0 2px 12px #0003;z-index:1}.idm-gl4-layer .available-layers .list-box .layers-title{font-size:14px;font-weight:600;padding:5px 10px;color:var(--idm-black-8)}.idm-gl4-layer .available-layers .list-box .layers-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0 10px;font-size:14px}.idm-gl4-layer .available-layers .list-box .layers-body .layer{width:100%}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio{margin:5px 0}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio{height:44px;color:var(--idm-black-8);display:flex;align-items:flex-start;justify-content:flex-start}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio .el-radio__inner{margin-top:3px}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio .radio-tip{font-size:12px;color:var(--idm-info-color)}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio.is-checked .el-radio__inner{background:var(--idm-primary-color);border-color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box .layers-body .layer-radio .el-radio.is-checked .el-radio__label{color:var(--idm-primary-color)}.idm-gl4-layer .available-layers .list-box .layers-body .tip{margin-left:-5px;margin-bottom:2px;font-size:12px;color:var(--idm-info-color)}.idm-gl4-layer .available-layers .list-box .layers-body .tip .bookmark-icon{color:var(--idm-warning-color)}.idm-gl4-layer .layer{display:inline-flex;align-items:center;padding:4px 0;color:var(--idm-black-8);font-size:14px;cursor:pointer}.idm-gl4-layer .layer .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2);box-sizing:border-box}.idm-gl4-layer .layer .bookmark-icon{font-size:15px}.idm-gl4-layer .layer .bookmark-icon.active{display:inline-block;color:var(--idm-warning-color)}.idm-gl4-layer .layer .bookmark-icon.inactive{display:none}.idm-gl4-layer .layer .sub-layer-icon{margin-left:6px;font-size:16px}.idm-gl4-layer .layer .sub-layer-icon.active{color:var(--idm-primary-color)}.idm-gl4-layer .layer.active .checkbox{border:1px solid var(--idm-primary-color);background:var(--idm-primary-color)}.idm-gl4-layer .layer.active .checkbox:after{position:relative;content:"✔";color:var(--idm-white);font-size:10px;display:flex;align-items:center;justify-content:center}.idm-gl4-layer .layer.active .name{color:var(--idm-primary-color)}.idm-gl4-layer .layer.disabled{color:var(--idm-black-4);cursor:not-allowed}.idm-gl4-layer .layer.disabled .checkbox{cursor:not-allowed;border:1px solid var(--idm-black-2);opacity:.5}.idm-gl4-layer .layer:hover .bookmark-icon.inactive{display:inline-block}.idm-gl4-layer .switch{font-size:24px;height:19px;margin-right:10px;color:var(--idm-black-2);cursor:pointer}.idm-gl4-layer .switch .active{color:var(--idm-primary-color)}.idm-gl4-layer .card-bg{background:var(--idm-gray-light2);border-radius:3px;margin:8px}.idm-gl4-layer .card-bg:first-child{margin-top:0}.wind-tool-bars{transition:all .4s ease-in-out;padding:2px 5px;border-radius:4px;background:var(--idm-white);box-shadow:0 2px 12px #0003}.wind-tool-bars .item-bar{cursor:pointer;padding:4px 10px}.wind-tool-bars .item-bar.active .checkbox{border:var(--idm-primary-color);background:var(--idm-primary-color)}.wind-tool-bars .item-bar.active .checkbox:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.wind-tool-bars .item-bar.active span{font-size:12px;color:var(--idm-primary-color)}.wind-tool-bars .item-bar .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2)}.wind-tool-bars .item-bar span{font-size:12px;color:var(--idm-black-8)}.legend-bars[data-v-24e5434b]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(98,113,184),rgb(61,110,163),rgb(74,148,170),rgb(74,146,148),rgb(77,142,124),rgb(76,164,76),rgb(103,164,54),rgb(162,135,64),rgb(162,109,92),rgb(141,63,92),rgb(151,75,145),rgb(95,100,160),rgb(91,136,161),rgb(91,136,161));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-24e5434b]{font-size:12px;text-align:center;color:var(--idm-white-8);width:32px}.current-tool-bars{transition:all .4s ease-in-out;background:var(--idm-white);padding:2px 5px;border-radius:4px;box-shadow:0 2px 12px #0003}.current-tool-bars .item-bar{cursor:pointer;padding:4px 10px}.current-tool-bars .item-bar.active .checkbox{border:var(--idm-primary-color);background:var(--idm-primary-color)}.current-tool-bars .item-bar.active .checkbox:after{content:"✔";color:var(--idm-white);font-size:12px;display:flex;align-items:center;justify-content:center}.current-tool-bars .item-bar.active span{font-size:12px;color:var(--idm-primary-color)}.current-tool-bars .item-bar .checkbox{width:14px;height:14px;margin-right:10px;border:1px solid var(--idm-black-2)}.current-tool-bars .item-bar span{font-size:12px;color:var(--idm-black-8)}.legend-bars[data-v-02a8206f]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(84,170,230),rgb(64,127,115),rgb(58,164,58),rgb(191,182,67),rgb(197,154,68),rgb(160,70,94),rgb(138,84,166),rgb(82,113,165),rgb(84,142,152),rgb(150,181,184),rgb(195,194,194),rgb(195,194,194));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-02a8206f]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.legend-bars[data-v-cdd80281]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(50,158,186),rgb(48,128,164),rgb(48,99,142),rgb(52,101,166),rgb(56,104,192),rgb(56,82,169),rgb(57,61,143),rgb(134,48,48),rgb(194,77,91),rgb(192,118,105),rgb(192,163,157),rgb(192,163,157));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-cdd80281]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-ae31802c]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(220,243,252),rgb(220,243,252),rgb(86,169,230),rgb(47,226,155),rgb(47,226,155),rgb(47,226,155),rgb(213,253,37),rgb(213,253,37),rgb(213,253,37),rgb(230,176,39),rgb(230,176,39),rgb(230,84,39),rgb(230,84,39));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-ae31802c]{font-size:12px;text-align:center;color:var(--idm-info-color);width:20px}.legend-bars[data-v-026a5595]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(255,255,255),rgb(53,125,177),rgb(33,145,140),rgb(45,178,125),rgb(112,207,87),rgb(253,231,37));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-026a5595]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-348d48fb]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(4,6,19),rgb(51,50,102),rgb(51,50,102),rgb(63,82,158),rgb(63,82,158),rgb(66,123,183),rgb(66,123,183),rgb(92,161,197),rgb(92,161,197),rgb(134,199,212),rgb(134,199,212),rgb(234,253,253));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-348d48fb]{font-size:12px;text-align:center;color:var(--idm-white);width:36px}.idm-tropical-gl4[data-v-6a684608]{bottom:unset;top:unset;background:var(--idm-white-9);padding:10px;border-radius:5px;box-shadow:0 2px 12px #0003;z-index:5}.idm-tropical-gl4 .header-box[data-v-6a684608]{min-width:360px;margin-bottom:10px;box-sizing:border-box;color:var(--idm-black-8)}.idm-tropical-gl4 .header-box .close-btn[data-v-6a684608]{position:relative;height:0px;text-align:right;font-size:20px;color:var(--idm-black-2);cursor:pointer}.idm-tropical-gl4 .header-box .close-btn[data-v-6a684608]:hover{color:var(--idm-primary-color)}.idm-tropical-gl4 .header-box .main[data-v-6a684608]{font-size:16px}.idm-tropical-gl4 .header-box .sub[data-v-6a684608]{margin:3px 0;font-size:12px;color:var(--idm-info-color)}.idm-tropical-gl4 .main-box[data-v-6a684608]{min-width:360px;color:var(--idm-black-8);overflow-y:auto;box-sizing:border-box;font-size:12px;z-index:4}.idm-tropical-gl4 .main-box .content[data-v-6a684608]{padding:5px 0;border-radius:5px;background:var(--idm-gray-light)}.idm-tropical-gl4 .main-box .row[data-v-6a684608]{width:100%;padding:4px 10px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}.idm-tropical-gl4 .main-box .row .col[data-v-6a684608]{display:flex;align-items:center;justify-content:space-between}.idm-tropical-gl4 .main-box .row .col label[data-v-6a684608]{width:82px;margin-right:4px;color:var(--idm-info-color)}.idm-tropical-gl4 .main-box .row .col.col-24[data-v-6a684608]{width:100%}.idm-tropical-gl4 .main-box .row .col.col-left[data-v-6a684608],.idm-tropical-gl4 .main-box .row .col.col-right[data-v-6a684608]{width:50%}.idm-tropical-gl4 .main-box .row .col .icon[data-v-6a684608]{font-size:30px;color:var(--idm-black-4)}.idm-tropical-gl4 .main-box .row .col .icon.active[data-v-6a684608]{color:var(--idm-primary-color)}.forecast-models[data-v-6a684608]{display:flex;justify-content:flex-end;flex:1;margin-left:5px;flex-wrap:wrap}.forecast-models .model[data-v-6a684608]{font-size:12px;padding:0 6px 4px;display:flex;border:1px solid var(--idm-primary-color);cursor:pointer}.forecast-models .model span[data-v-6a684608]{border-bottom:2px dashed #f2a0a0}.forecast-models .model span.cma[data-v-6a684608]{border-color:#e2ea03cc}.forecast-models .model span.jma[data-v-6a684608]{border-color:#01d2b7cc}.forecast-models .model span.ecmwf[data-v-6a684608]{border-color:#f582f2cc}.forecast-models .model span.ukm[data-v-6a684608]{border-color:#f5bb47cc}.forecast-models .model span.noaa-at[data-v-6a684608],.forecast-models .model span.noaa-ep[data-v-6a684608]{border-color:#9758fbcc}.forecast-models .model.active[data-v-6a684608]{border:1px solid var(--idm-primary-color);background-color:var(--idm-primary-color);color:var(--idm-white)}.forecast-models .model[data-v-6a684608]:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.forecast-models .model.center-child[data-v-6a684608]{border-left:1px solid var(--idm-primary-color);border-right:1px solid var(--idm-primary-color)}.forecast-models .model[data-v-6a684608]:last-child{border-top-right-radius:4px;border-bottom-right-radius:4px}.legend[data-v-6a684608]{display:flex;align-items:center;color:var(--idm-info-color)}.legend .icon[data-v-6a684608]{height:14px;width:14px;border-radius:50%;border:3px solid #fff;margin-right:3px}.legend .icon.td[data-v-6a684608]{background-color:var(--idm-tropicals-td)}.legend .icon.ts[data-v-6a684608]{background-color:var(--idm-tropicals-ts)}.legend .icon.sts[data-v-6a684608]{background-color:var(--idm-tropicals-sts)}.legend .icon.ty[data-v-6a684608]{background-color:var(--idm-tropicals-ty)}.legend .icon.sty[data-v-6a684608]{background-color:var(--idm-tropicals-sty)}.legend .icon.supper-ty[data-v-6a684608]{background-color:var(--idm-tropicals-super-ty)}.legend .icon.r7[data-v-6a684608]{border:1.5px solid var(--idm-tropicals-r7)}.legend .icon.r10[data-v-6a684608]{border:1.5px solid var(--idm-tropicals-r10)}.legend .icon.history[data-v-6a684608]{border:none;border-radius:0;height:4px;background:var(--idm-black-5)}.legend .button[data-v-6a684608]{cursor:pointer;padding:0 4px;border-radius:4px;border:1px solid var(--idm-primary-color);color:var(--idm-primary-color)}.more[data-v-6a684608]{display:flex;align-items:center;justify-content:flex-end;color:var(--idm-primary-color);font-weight:700;margin-top:5px;cursor:pointer}.legend-bars[data-v-e83717bd]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgba(59,126,162,0),rgb(172,210,255),rgb(172,210,255),rgb(3,248,103),rgb(14,201,3),rgb(190,226,2),rgb(248,1,1),rgb(197,5,58),rgb(197,5,58));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-e83717bd]{font-size:12px;text-align:center;color:var(--idm-white);width:35px}.legend-bars[data-v-1c8a9237]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(189,50,160),rgb(208,56,56),rgb(208,56,56),rgb(190,226,2),rgb(190,226,2),rgb(4,210,64),rgb(4,210,64),rgb(172,210,255),rgb(172,210,255));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-1c8a9237]{font-size:12px;text-align:center;color:var(--idm-white);width:40px}.legend-bars[data-v-8974924d]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-8974924d]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.legend-bars[data-v-d709ba86]{transition:all .4s ease-in-out;background:linear-gradient(to right,rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(149,137,211),rgb(150,209,216),rgb(129,204,197),rgb(103,180,186),rgb(95,143,197),rgb(80,140,62),rgb(121,146,28),rgb(171,161,14),rgb(223,177,6),rgb(243,150,6),rgb(236,95,21),rgb(190,65,18),rgb(138,43,10),rgb(138,43,10));padding:2px 0;border-radius:10px;box-shadow:0 2px 12px #000c}.legend-bars span[data-v-d709ba86]{font-size:12px;text-align:center;color:var(--idm-white);width:32px}.point-meteo[data-v-fa02c365]{bottom:unset;z-index:9;top:0!important}.point-meteo .meteo-box[data-v-fa02c365]{position:absolute;top:0;left:5px;width:480px;font-size:13px;color:var(--idm-black-8);background-color:var(--idm-white);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-top-right-radius:5px;border-bottom-right-radius:5px;box-shadow:0 2px 12px #0003;font-family:Microsoft YaHei,Helvetica Neue,Helvetica}.point-meteo .meteo-box .header-box[data-v-fa02c365]{padding:8px 5px;font-size:16px;box-sizing:border-box;color:var(--idm-black-8);border-top-right-radius:5px;background-color:var(--idm-gray-light)}.point-meteo .meteo-box .header-box .lnglat[data-v-fa02c365]{margin:0 5px}.point-meteo .meteo-box .header-box .close[data-v-fa02c365]{font-size:18px;color:var(--idm-black-3);cursor:pointer}.point-meteo .meteo-box .header-box .close[data-v-fa02c365]:hover{color:var(--idm-primary-color)}.point-meteo .meteo-box .header-box .toggle[data-v-fa02c365]{margin-right:10px;font-size:22px;color:var(--idm-primary-color);cursor:pointer}.point-meteo .meteo-box .main-box[data-v-fa02c365]{padding:10px;height:300px;background:var(--idm-white);color:var(--idm-black-7);background-size:cover;background-position:top left}.point-meteo .meteo-box .main-box.night-bg[data-v-fa02c365]{color:var(--idm-white);background-image:url(https://osshz.idmwx.com/asset/weather/night.jpg)}.point-meteo .meteo-box .main-box.night-bg .gray[data-v-fa02c365]{color:var(--idm-white)!important}.point-meteo .meteo-box .main-box.day-bg[data-v-fa02c365]{color:var(--idm-black-7);background:#fff}.point-meteo .meteo-box .main-box.font-color-white[data-v-fa02c365]{color:var(--idm-white)}.point-meteo .meteo-box .main-box .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .info[data-v-fa02c365]{font-size:13px;opacity:.8}.point-meteo .meteo-box .main-box .summary-row[data-v-fa02c365]{margin-bottom:10px}.point-meteo .meteo-box .main-box .summary-row .summary .icon[data-v-fa02c365]{height:60px;width:60px;cursor:pointer}.point-meteo .meteo-box .main-box .summary-row .summary .temp[data-v-fa02c365]{font-size:28px;margin:0 20px 0 5px}.point-meteo .meteo-box .main-box .summary-row .summary .des[data-v-fa02c365]{font-size:13px}.point-meteo .meteo-box .main-box .summary-row .summary label[data-v-fa02c365]{margin-right:2px}.point-meteo .meteo-box .main-box .summary-row .date[data-v-fa02c365]{margin:0 5px;font-size:14px}.point-meteo .meteo-box .main-box .summary-row .row[data-v-fa02c365]{padding:3px 0;box-sizing:border-box}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item[data-v-fa02c365]{width:max-content;padding:3px 20px;margin-bottom:5px;font-size:14px;cursor:pointer}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item.active[data-v-fa02c365]{color:#409eff;font-weight:600;border-bottom:2px solid #409EFF}.point-meteo .meteo-box .main-box .detail-box .menu-header .menu-item[data-v-fa02c365]:hover{color:#409eff;font-weight:600}.point-meteo .meteo-box .main-box .detail-box .basic-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table[data-v-fa02c365]{width:100%;height:152px;font-size:12px}.point-meteo .meteo-box .main-box .detail-box .basic-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table tr[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table tr[data-v-fa02c365]{width:100%}.point-meteo .meteo-box .main-box .detail-box .basic-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table tr th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table td[data-v-fa02c365]{text-align:center;height:18px;line-height:15px;width:43px}.point-meteo .meteo-box .main-box .detail-box .basic-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table th[data-v-fa02c365]{font-weight:400}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-title[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-title[data-v-fa02c365]{text-align:right!important;width:95px}.point-meteo .meteo-box .main-box .detail-box .basic-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .unit[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .unit[data-v-fa02c365]{display:inline-block;width:24px;padding:0 5px;text-align:left}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide[data-v-fa02c365]{padding:5px 40px}.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .tr-tide td[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide th[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .tr-tide td[data-v-fa02c365]{width:max-content!important}.point-meteo .meteo-box .main-box .detail-box .basic-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .weather-icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .weather-icon[data-v-fa02c365]{width:22px;height:22px;cursor:pointer}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon[data-v-fa02c365]{font-size:10px;margin-right:1px}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.blue[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.wind[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.wind[data-v-fa02c365]{color:#60c43e}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.sigwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.windwave[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.windwave[data-v-fa02c365]{color:#017c8a}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.swell[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.swell[data-v-fa02c365]{color:#21baa3}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.current[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.current[data-v-fa02c365]{color:#bc6cfe}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.orange[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.orange[data-v-fa02c365]{color:var(--idm-warning-color-light)}.point-meteo .meteo-box .main-box .detail-box .basic-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .wave-current-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .sea-table .icon.gray[data-v-fa02c365],.point-meteo .meteo-box .main-box .detail-box .tide-table .icon.gray[data-v-fa02c365]{color:var(--idm-black-6)}.point-meteo .meteo-box .main-box .more[data-v-fa02c365]{margin-top:5px;padding:5px 10px 5px 0;text-align:right;font-size:14px;font-weight:600;font-style:italic;cursor:pointer}.point-meteo .meteo-box .main-box .more.day[data-v-fa02c365]{color:var(--idm-black-7);border-top:1px solid var(--idm-black-2)}.point-meteo .meteo-box .main-box .more.night[data-v-fa02c365]{color:var(--idm-white);border-top:1px solid var(--idm-white-2)}.point-meteo .meteo-box .main-box .more[data-v-fa02c365]:hover{font-style:normal;color:#409eff}.point-meteo[data-v-fa02c365]:after{display:block;margin-bottom:360px;width:8px;height:8px;border-radius:50%;content:"";background-color:var(--idm-gray-light);box-shadow:0 2px 12px #000}.point-meteo[data-v-fa02c365]:before{display:block;content:"";width:2px;height:360px;margin-left:3px;border-left:2px solid var(--idm-gray-light);box-shadow:0 2px 12px #000}#idm-gl4-zone-info{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:10px;border-radius:5px;cursor:default;z-index:1000;height:fit-content;max-height:900px;overflow-y:auto;font-size:13px;box-shadow:0 2px 12px #0003}#idm-gl4-zone-info .rich-context{width:500px}#idm-gl4-zone-info .close{font-size:20px;position:absolute;right:10px;top:10px;color:var(--idm-black-2);border-top-right-radius:6px;cursor:pointer}#idm-gl4-zone-info .close:hover{color:var(--idm-primary-color)}#port-info[data-v-2fc5fc5e]{position:absolute;background:var(--idm-white);color:var(--idm-black-8);padding:5px 10px;border-radius:6px;cursor:default;height:fit-content;box-shadow:0 2px 12px #0003;z-index:7}#port-info .port-box[data-v-2fc5fc5e]{min-width:240px;width:max-content}#port-info .port-box .flex-start[data-v-2fc5fc5e]{line-height:2}#port-info .port-box .flex-start label[data-v-2fc5fc5e]{color:var(--idm-info-color);margin-right:10px;width:50px}#port-info .port-box .flex-start span[data-v-2fc5fc5e]{flex:1;flex-wrap:wrap;text-align:justify-all;color:var(--idm-black-8)}#port-info .port-box .flex-start span.link[data-v-2fc5fc5e]{cursor:pointer;text-decoration:underline}#port-info .port-box .flex-start span.link[data-v-2fc5fc5e]:hover{font-weight:600}#port-info .port-box .meteo-forecast[data-v-2fc5fc5e]{color:var(--idm-primary-color);font-size:14px;font-weight:700;cursor:pointer}#port-info .close[data-v-2fc5fc5e]{position:relative;text-align:right;height:0;color:var(--idm-black-2);font-size:20px;cursor:pointer;z-index:8}#port-info .close[data-v-2fc5fc5e]:hover{color:var(--idm-primary-color)}.lat-lng-tip[data-v-ad66a24c]{position:absolute;padding:2px 10px;border-radius:5px;color:var(--idm-primary-color);font-size:12px;top:unset;background:var(--idm-white);box-shadow:0 2px 12px #00000080;transition:all .4s ease-in-out}.menu-bar-box[data-v-8ff97b39]{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;transition:all .4s ease-in-out}.menu-bar-box .bar-item[data-v-8ff97b39]{position:relative;margin-bottom:15px;border-radius:5px;background:var(--idm-white);cursor:pointer;box-shadow:0 2px 12px #0003}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]{padding:8px;display:flex}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.menu-bar-box .bar-item .menu-icon[data-v-8ff97b39]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.menu-bar-box .bar-item .menu-icon span[data-v-8ff97b39]{font-size:18px;font-weight:500;color:var(--idm-black-8)}.menu-bar-box .bar-item .menu-icon.active[data-v-8ff97b39]{background:var(--idm-primary-color)}.menu-bar-box .bar-item .menu-icon.active span[data-v-8ff97b39]{color:var(--idm-white)}.idm-gl2-enc-legend-bars{margin-bottom:150px;border-radius:5px;background:var(--idm-background-linear-gradient-top)}.idm-gl2-enc-legend-bars div{padding:4px 8px;cursor:pointer;color:var(--idm-white-9)}.idm-gl2-enc-legend-bars div.active{color:var(--idm-success-color)}:root{--idm-gl-box-shadow-color: rgba(0, 0, 0, .5);--idm-gl-box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .04), 0px 8px 20px rgba(0, 0, 0, .08);--idm-gl-box-shadow-light: 0px 0px 12px rgba(0, 0, 0, .12);--idm-gl-box-shadow-lighter: 0px 0px 6px rgba(0, 0, 0, .12);--idm-gl-box-shadow-dark: 0px 16px 48px 16px rgba(0, 0, 0, .08), 0px 12px 32px rgba(0, 0, 0, .12), 0px 8px 16px -8px rgba(0, 0, 0, .16)}.point-marker{pointer-events:none!important}.point-marker .marker-circle{pointer-events:inherit;width:12px;height:12px;border-radius:50%;border:2px solid var(--idm-white);background:var(--idm-danger-color)}.point-marker .marker-circle:hover{cursor:pointer}.point-marker.closed{pointer-events:auto!important}.point-summary-marker,.point-contextmenu-marker{color:var(--idm-white);font-size:12px;background:var(--idm-danger-color);border:2px solid var(--idm-white);padding:2px 5px;border-radius:5px;cursor:pointer}.point-summary-marker .marker-close,.point-contextmenu-marker .marker-close{pointer-events:auto;position:absolute;background:var(--idm-danger-color);border:1px dashed var(--idm-white);display:flex;align-items:center;justify-content:center;width:20px;height:20px;right:-17px;top:-17px;cursor:pointer;font-size:20px}.tip-marker{color:var(--idm-white);font-size:12px;text-shadow:var(--idm-text-shadow);background-color:var(--idm-black-6);padding:2px 5px;border-radius:5px;cursor:pointer}.tip-marker .marker-label{border-bottom:var(--idm-dashed-border)}.tip-marker .marker-label:last-child{border-bottom:none}.tip-marker .marker-label b{font-weight:600;color:var(--idm-danger-color)}.hurricane-hourly-marker .iconfont{font-size:34px!important;color:var(--idm-danger-color)}.hurricane-hourly-marker svg{height:34px;width:34px}.hurricane-hourly-marker .center{box-sizing:border-box;display:flex;align-items:center;justify-content:center}.hurricane-hourly-marker .center.north{animation:anticlockwise 2s linear infinite}.hurricane-hourly-marker .center.south{animation:clockwise 2s linear infinite}@keyframes clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes anticlockwise{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 29 29' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='29' height='29' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='88' height='23' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}body{margin:0;padding:0;overflow:hidden;font-family:Microsoft YaHei}.mapbox-initial-gl4{box-sizing:border-box;height:100vh;width:100vw;overflow:hidden}.mapbox-initial-gl4 #map{position:absolute;width:100%;height:100%}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-right{display:none}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left{display:none!important}.mapbox-initial-gl4 .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-logo{display:none}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@idmwx/idmui-gl4",
3
3
  "private": false,
4
- "version": "0.0.2",
4
+ "version": "0.0.4",
5
5
  "description": "idm webgl4",
6
6
  "type": "module",
7
7
  "keywords": [
@@ -28,6 +28,10 @@
28
28
  "release": "yarn build && yarn publish --access public"
29
29
  },
30
30
  "dependencies": {
31
+ "@idm-plugin/geo": "^1.8.6",
32
+ "@idm-plugin/meteo": "^0.5.2",
33
+ "@idm-plugin/tag": "^0.2.6",
34
+ "@idmui/style": "^0.1.7",
31
35
  "@mapbox/sphericalmercator": "^1.2.0",
32
36
  "@turf/turf": "^6.5.0",
33
37
  "axios": "^1.3.5",
@@ -39,17 +43,7 @@
39
43
  "moment-timezone": "^0.5.47",
40
44
  "vue": "^3.2.36"
41
45
  },
42
- "peerDependencies": {
43
- "@idm-plugin/geo": "^1.8.6",
44
- "@idm-plugin/meteo": "^0.5.1",
45
- "@idm-plugin/tag": "^0.2.3",
46
- "@idmui/style": "^0.1.7"
47
- },
48
46
  "devDependencies": {
49
- "@idm-plugin/geo": "^1.8.6",
50
- "@idm-plugin/meteo": "^0.5.1",
51
- "@idm-plugin/tag": "^0.2.6",
52
- "@idmui/style": "^0.1.7",
53
47
  "@types/mapbox-gl": "^3.1.0",
54
48
  "@types/node": "^18.14.2",
55
49
  "@typescript-eslint/eslint-plugin": "^5.53.0",