@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172B4D;--muted:#172B4DB3;--teal:#0052CC;--line:#DFE1E6;--bg:#F4F5F7}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:'DM Sans',sans-serif;color:var(--ink)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #0052CC;outline-offset:3px}button{color:inherit}header svg,.cardtop svg,.bottomnav svg{width:23px;height:23px}a{color:var(--teal)}header{height:74px;border-bottom:1px solid var(--line);background:#FFFFFF;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1040px)/2));position:relative;z-index:600}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:Manrope;font-weight:800;font-size:20px;letter-spacing:-.7px;color:var(--ink)}.brandmark{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#DFE1E6;color:var(--teal)}.avatar{border:1px solid var(--line);background:#F4F5F7;border-radius:100%;height:36px;width:36px;font-weight:700;color:var(--teal)}[hidden]{display:none!important}.content{max-width:1000px;margin:0 auto;padding:32px 24px 115px}.pageheading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}h1{font-family:Manrope;font-size:30px;line-height:1.25;letter-spacing:-1px;margin:5px 0 7px}h2,h3,p{margin:0}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--teal)}.muted{color:var(--muted);font-size:13px}.iconbutton{background:#FFFFFF;border:1px solid var(--line);border-radius:12px;height:42px;width:42px;font-size:24px}.locationbar{display:flex;align-items:center;gap:12px;background:#FFFFFF;border:1px solid var(--line);border-radius:14px;padding:16px}.locationicon{background:#F4F5F7;border-radius:10px;width:40px;height:40px;display:grid;place-items:center;font-size:25px;color:var(--teal)}.locationname{flex:1;min-width:0}.locationname h2{font-family:Manrope;font-size:18px;font-weight:800;overflow-wrap:anywhere}.locationname span{font-size:10px;color:var(--muted)}.star{width:39px;height:39px;border:0;border-radius:10px;background:#F4F5F7;color:var(--teal);font-size:25px}.locationtools{display:flex;align-items:center;gap:14px;margin:12px 0;font-size:12px}.locationtools select{border:0;background:transparent;color:var(--teal);padding:6px 0;max-width:45%;min-width:0}.textbutton{border:0;background:transparent;font-size:12px;color:var(--teal);padding:7px 0}.locationtools .textbutton:last-child{margin-left:auto}.savedetails{font-size:11px;color:var(--muted);margin:10px 0}.savedetails summary{cursor:pointer;width:max-content}.savedetails form{display:flex;gap:8px;margin:10px 0}input:not([type=range]),select{border:1px solid var(--line);padding:11px 12px;border-radius:9px;background:#FFFFFF;color:var(--ink)}#favname{flex:1;min-width:0}.primary{border:0;border-radius:10px;padding:12px 18px;background:var(--teal);color:#FFFFFF;font-size:12px;font-weight:600}.primary:hover{background:#0052CC}.smallnote{font-size:10px;line-height:1.6;color:var(--muted)}#favstatus:not(:empty){padding:3px 0 12px;color:var(--teal)}.forecastgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:19px}.windcard,.wavecard{border-radius:19px;padding:25px}.windcard{background:#172B4D;color:#FFFFFF;position:relative;overflow:hidden}.windcard:after{content:'';border:1px solid #FFFFFF12;border-radius:50%;width:220px;height:220px;position:absolute;right:-90px;top:-90px;pointer-events:none}.cardtop{display:flex;justify-content:space-between;align-items:center;font-size:13px}.windcard .cardtop{color:#DFE1E6}.big{display:flex;align-items:baseline;gap:10px;margin:20px 0 13px}.big strong{font-family:Manrope;font-size:63px;line-height:1.1;font-weight:700;letter-spacing:-2px}.big .unit{color:#172B4DB3;font-size:17px}.direction{display:flex;gap:12px;align-items:center;font-size:13px;color:#DFE1E6}.windfooter{display:flex;justify-content:space-between;margin-top:24px;padding-top:16px;border-top:1px solid #FFFFFF21;font-size:11px;color:#172B4DB3}.windfooter b{color:#FFFFFF;font-weight:500;margin-left:6px;font-size:13px}.wavecard{border:1px solid var(--line);background:white}.waveglyph{font-size:28px;color:var(--teal);line-height:24px}.wavecard .big strong{font-size:46px;letter-spacing:-1.5px;margin-top:10px;white-space:nowrap}.wavefacts{display:flex;gap:24px;margin-top:25px}.wavefacts small{display:block;font-size:10px;color:var(--muted);margin-bottom:8px}.wavefacts b{font-size:14px;font-weight:600}.wavecard .smallnote{margin-top:17px}.statusrow{display:flex;align-items:center;gap:8px;margin:12px 0 24px}.status{font-size:10px;color:var(--muted)}.status.error{color:#0052CC}.retry{display:none}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:20px 0 12px}.sectionhead h2{font-family:Manrope;font-size:17px}.sectionhead .muted{font-size:11px}.home-time{background:white;border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:12px}input[type=range]{width:100%;accent-color:var(--teal);cursor:pointer}.home-time div{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-top:5px}.hourly{display:flex;gap:8px;overflow:auto;padding-bottom:8px}.hour{background:#FFFFFF;border:1px solid var(--line);border-radius:12px;min-width:88px;flex:1;text-align:center;padding:13px 7px;font-size:13px}.hour.active{background:#DFE1E6;border-color:#DFE1E6}.hour small{display:block;font-size:10px;color:var(--muted);margin-bottom:8px}.hour .arr{display:block;font-size:20px;color:var(--teal);margin:9px 0}.hourdetail{border-top:1px solid var(--line);padding-top:8px;margin-top:10px}.hourdetail small{font-size:9px;margin:5px 0}.quality{border:1px solid var(--line);border-radius:14px;padding:18px;background:#FFFFFF;margin-top:17px}.sectiontitle{font-family:Manrope;font-size:13px;font-weight:700;margin-bottom:14px}.qualityrow{display:flex;justify-content:space-between;align-items:center;font-size:12px}.stars{color:#0052CC;font-size:19px;letter-spacing:2px}.quality .smallnote{margin:5px 0 13px;max-width:700px}.quality details{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;line-height:1.7}.quality summary{color:var(--teal);cursor:pointer}.quality details p{margin-top:9px}.source-note{font-size:10px;color:var(--muted);margin:20px 0;line-height:1.7}.bottomnav{position:fixed;z-index:1000;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:30px;background:#FFFFFFef;backdrop-filter:blur(15px);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom))}.bottomnav button{border:0;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border-radius:10px;min-width:100px;padding:5px 22px;font-size:10px;color:#172B4DB3}.bottomnav button svg{height:23px;width:23px}.bottomnav button.active{color:var(--teal);background:#F4F5F7}.bottomnav button.active span{font-weight:700}.count{background:#DFE1E6;color:var(--teal);border-radius:12px;padding:12px 16px;font-weight:700}.favoritesintro{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:24px;max-width:400px}.saved{display:grid;grid-template-columns:1fr 1fr;gap:12px}.saveditem{display:flex;align-items:center;gap:5px;padding:15px;border-radius:13px;border:1px solid var(--line);background:#FFFFFF}.btn{border:1px solid var(--line);padding:9px;border-radius:8px;background:white;font-size:12px}.saveditem .openfav{flex:1;text-align:left;border:0;line-height:1.5;font-weight:600;min-width:0;overflow-wrap:anywhere}.saveditem .removefav{color:#0052CC}.saveditem input{min-width:0;width:100%}.addpoint{margin-top:20px}.profile-page{max-width:620px}.profilecard{text-align:center;background:#FFFFFF;border:1px solid var(--line);border-radius:16px;padding:24px}.profileavatar{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#DFE1E6;color:var(--teal);font-size:26px;font-weight:700;margin:0 auto 12px}.profilecard h2{font-family:Manrope;font-size:20px;margin-bottom:5px;overflow-wrap:anywhere}.settings{display:flex;flex-direction:column;gap:10px;margin:24px 0}.settings label{font-size:12px;font-weight:600;margin-top:8px}.settings .primary{margin-top:10px;padding:14px}.profileinfo{border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:var(--muted);line-height:1.8}.profileinfo h3{color:var(--ink);font-size:13px;margin-bottom:8px}.profileinfo p{margin:8px 0}.map-page{height:calc(100dvh - 150px - env(safe-area-inset-bottom));position:relative;background:#DFE1E6}#map{width:100%;height:100%}.maptop{position:absolute;z-index:500;left:20px;right:20px;top:20px;display:flex;justify-content:space-between;pointer-events:none;gap:8px}.badge,.units{background:white;border-radius:11px;box-shadow:0 3px 12px #172B4D0d;pointer-events:auto}.badge{padding:12px;font-size:12px}.badge small{display:block;color:var(--muted);font-size:10px;margin-top:4px;max-width:230px}.badge i{width:6px;height:6px;display:inline-block;background:var(--teal);border-radius:50%;margin-right:6px}.mapcontrols{display:flex;gap:8px;pointer-events:auto}.units{padding:4px;display:flex;height:max-content}.units button{border:0;border-radius:7px;background:transparent;padding:8px 11px;font-size:11px;color:var(--muted)}.units button.active{background:var(--teal);color:#FFFFFF}.bottom{position:absolute;bottom:18px;left:20px;right:20px;z-index:500;pointer-events:none}.legend{background:white;display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:8px;width:max-content;font-size:10px;max-width:100%;margin-bottom:10px;pointer-events:auto}.gradient{height:5px;width:110px;background:linear-gradient(90deg,#37a9bb,#159d7f,#94b34d,#e6b65b,#d66e55);border-radius:5px}.timeline{border-radius:12px;padding:13px 15px;background:#FFFFFF;pointer-events:auto}.timehead{display:flex;justify-content:space-between;gap:8px;font-size:11px;margin-bottom:8px}.timehead small{font-size:9px;color:var(--muted)}.sliderrow{display:flex;align-items:center;gap:10px}.sliderrow input{min-width:0}.play{border:0;background:#DFE1E6;color:var(--teal);width:30px;height:30px;border-radius:50%}.ticks{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin:6px 0 0 40px}.map-selection{position:absolute;z-index:500;top:89px;left:20px;background:#FFFFFF;border-radius:12px;padding:10px 12px;display:flex;gap:16px;align-items:center;max-width:calc(100% - 40px);box-shadow:0 3px 12px #172B4D0d}.map-selection small{display:block;font-size:9px;color:var(--muted);margin-bottom:4px}.map-selection b{display:block;font-size:12px;max-width:200px;overflow-wrap:anywhere}.map-selection .primary{padding:10px;white-space:nowrap}.regionlabel{font-size:10px;color:#172B4DB3;font-weight:600;letter-spacing:2px;white-space:nowrap;text-shadow:0 1px 2px white;text-align:center}.wind-icon{border:0;background:none}.windlabel{display:flex;align-items:center;gap:3px;width:max-content;color:#FFFFFF;border:2px solid #FFFFFFb0;box-shadow:0 2px 7px #172B4D20;padding:4px 7px;border-radius:7px;font-size:12px;font-weight:700;white-space:nowrap}.windlabel em{font-style:normal;display:inline-block;font-size:17px}.selectedpin{width:17px;height:17px;border:4px solid white;border-radius:50%;background:#172B4D;box-shadow:0 0 0 6px #172B4D22}.leaflet-bottom.leaflet-left{bottom:180px}.leaflet-control-zoom{border:0!important;box-shadow:0 2px 12px #172B4D14!important}.leaflet-control-attribution{font-size:8px!important}@media(max-width:640px){header{height:64px;padding:0 20px}.brand{font-size:18px}.content{padding:25px 20px 110px}h1{font-size:27px}.pageheading{margin-bottom:22px}.forecastgrid{gap:12px}.windcard,.wavecard{padding:17px;border-radius:16px}.big{margin:21px 0 14px}.big strong{font-size:44px}.big .unit{font-size:13px}.cardtop{font-size:11px}.wavecard .big strong{font-size:30px;letter-spacing:-1px;margin-top:11px}.wavefacts{display:grid;gap:12px;margin-top:20px;grid-template-columns:1fr 1fr}.wavefacts div:last-child{display:none}.wavefacts small{font-size:9px;margin-bottom:6px}.wavefacts b{font-size:12px;white-space:nowrap}.windfooter{flex-direction:column;gap:10px;margin-top:21px;padding-top:12px}.windfooter span{display:flex;justify-content:space-between}.wavecard .smallnote{font-size:9px;margin-top:13px}.locationbar{padding:12px}.locationname h2{font-size:16px}.locationtools{gap:10px;font-size:11px}.locationtools .textbutton{font-size:11px}.locationtools select{font-size:11px}.bottomnav{gap:0;justify-content:space-around;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.bottomnav button{min-width:0;width:25%;padding:5px 8px;background:none!important}.bottomnav button.active svg{stroke-width:2.2}.bottomnav button.active:before{content:'';width:20px;height:3px;position:absolute;bottom:calc(59px + env(safe-area-inset-bottom));background:var(--teal);border-radius:3px}.saved{grid-template-columns:1fr}.map-page{height:calc(100dvh - 136px - env(safe-area-inset-bottom))}.maptop{left:12px;right:12px;top:12px}.badge{font-size:11px;padding:10px;max-width:180px;height:max-content}.badge small{font-size:9px}.mapcontrols{flex-direction:column;gap:6px;align-items:flex-end}.units button{padding:7px 9px;font-size:10px}.map-selection{top:96px;left:12px;max-width:calc(100% - 24px);gap:12px}.map-selection b{max-width:150px}.bottom{bottom:20px;left:12px;right:12px}.timeline{padding:12px}.timehead small{max-width:120px;text-align:right}.quality{padding:15px}.hour{min-width:76px}.sectionhead .muted{font-size:10px}}@media(max-width:360px){.content{padding-left:14px;padding-right:14px}.windcard,.wavecard{padding:14px}.big strong{font-size:38px}.wavecard .big strong{font-size:27px}.wavefacts{grid-template-columns:1fr}.wavefacts div:last-child{display:none}.locationtools{flex-wrap:wrap}}

.bottomnav button{background:#F4F5F7;border:1px solid #DFE1E6;min-height:52px;min-width:130px}.bottomnav button.active{background:#0052CC;color:white;border-color:#0052CC}.bottomnav button:hover{border-color:#0052CC}@media(max-width:640px){.bottomnav{gap:7px;padding-left:10px;padding-right:10px}.bottomnav button{min-width:0;padding:7px 3px;background:#F4F5F7!important;border:1px solid #DFE1E6;font-size:9px;gap:5px}.bottomnav button.active{background:#0052CC!important;color:white;border-color:#0052CC}.bottomnav button.active:before{display:none}.bottomnav button svg{width:21px;height:21px}}
/* Hourly wind and gusts */
#wind-arrow{font-size:24px;display:inline-block;line-height:22px;margin-right:3px}.hourunit{font-family:'DM Sans',sans-serif;font-size:11px;font-weight:400;color:var(--muted);padding-left:5px}.hour small.hour-windlabel{margin:10px 0 5px;font-size:9px}.hour small.hour-gustlabel{margin:12px 0 4px;font-size:9px;color:#0052CC}.hour .hour-gust{color:#0052CC;font-size:14px}.hour .hour-direction{font-size:10px;margin:0}.hour .arr{margin:9px 0 4px}.hour{min-width:90px}.windlabel.withgust{display:block;text-align:center;padding:5px 8px;min-width:72px}.marker-main{display:flex;align-items:center;justify-content:center;gap:4px}.windlabel small{display:block;font-size:9px;font-weight:500;line-height:1.45;color:#FFFFFF}.windlabel .marker-degree{color:#FFFFFFc9;font-size:8px}.map-selection{display:block;min-width:282px;max-width:330px}.map-pointhead{display:flex;align-items:center;justify-content:space-between;gap:12px}.map-pointhead b{max-width:200px}.map-windvalues{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;margin-top:12px;border-top:1px solid var(--line);padding-top:11px}.map-windvalues small{font-size:9px;white-space:nowrap}.map-windvalues strong{font-size:14px;white-space:nowrap}.map-windvalues div:nth-child(2) strong{color:#0052CC}.gust-mapnote{width:max-content;max-width:100%;background:#FFFFFF;padding:7px 10px;margin-bottom:8px;font-size:9px;color:var(--muted);border-radius:7px;pointer-events:auto}.bottom .legend{margin-bottom:5px}@media(max-width:640px){.map-selection{min-width:265px;max-width:calc(100% - 24px);top:103px;padding:10px 12px}.map-pointhead b{max-width:170px}.map-windvalues{gap:10px}.map-windvalues strong{font-size:12px}.units button{padding:7px 8px}.maptop .badge{max-width:150px}.hour{min-width:82px}.windfooter span{gap:4px}.windfooter span:first-child{font-size:10px}.windfooter b{margin-left:0;font-size:12px}}@media(max-width:360px){.map-selection{top:110px}.map-windvalues{gap:8px}}
.wind-flow-overlay{position:absolute;inset:0;z-index:450;pointer-events:none;overflow:hidden}.wind-flow-overlay canvas{display:block;position:absolute;inset:0;pointer-events:none}.flow-controls{display:flex;align-items:center;gap:11px;padding:4px 10px 4px 4px;background:#FFFFFF;border-radius:11px;box-shadow:0 3px 12px #172B4D0d;font-size:10px;height:39px;pointer-events:auto}.flow-controls button{border:0;border-radius:7px;background:#DFE1E6;color:#0052CC;font-size:10px;padding:8px 10px;white-space:nowrap}.flow-controls label{display:flex;align-items:center;gap:4px;cursor:pointer}.flow-controls input{accent-color:var(--teal);margin:0}.mapcontrols{flex-wrap:wrap;justify-content:flex-end;max-width:560px}.regionlabel{color:#172B4D;text-shadow:0 1px 3px #FFFFFF,0 0 5px #FFFFFF}.bottom .legend{align-items:center;gap:14px}.color-scale{width:230px}.color-scale .gradient{width:100%;height:8px;background:linear-gradient(90deg,#153eab 0%,#1679df 12.5%,#36c4df 25%,#77d27c 37.5%,#f4e466 50%,#f8a13b 62.5%,#ef503b 75%,#b72354 100%)}.color-ticks{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-top:4px}.map-pointhead small{font-size:9px}.map-selection{background:#FFFFFFf2;backdrop-filter:blur(5px)}@media(max-width:640px){.mapcontrols{flex-wrap:nowrap;max-width:none;gap:6px}.flow-controls{height:32px;padding:3px 6px 3px 3px;gap:5px;font-size:9px}.flow-controls button{padding:6px 7px;font-size:9px}.flow-controls input{width:12px;height:12px}.map-selection{top:134px}.color-scale{width:170px}.bottom .legend{gap:10px}.maptop .badge{max-width:135px}.badge small{max-width:110px}.map-windvalues{padding-top:8px;margin-top:8px}}@media(max-height:620px){.map-selection{top:85px}.map-windvalues{margin-top:6px;padding-top:6px}.map-selection small{font-size:8px}.bottom{bottom:15px}.timeline{padding:8px}.gust-mapnote{display:none}}
.modelbar{display:flex;align-items:center;gap:14px;background:white;border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-top:16px}.modelbar label{font-size:11px;font-weight:600;white-space:nowrap}.modelbar select{flex:1;min-width:0;padding:8px 10px;font-size:12px;background:#F4F5F7}.source-detail{font-size:10px;color:var(--muted);line-height:1.7;margin:10px 0}.source-detail summary{cursor:pointer;color:var(--teal)}.source-detail p{margin-top:7px;max-width:700px}.badge .model-select{display:block;max-width:100%;width:206px;padding:7px 4px;font-size:11px;border:0;border-bottom:1px solid var(--line);border-radius:0;margin-top:5px;background:transparent}.maptop .badge{min-width:220px}.maptop .badge small{max-width:220px}.map-selection{top:155px}.detailbutton{font-size:9px;white-space:nowrap;color:var(--teal);border:1px solid #DFE1E6;border-radius:6px;background:#F4F5F7;padding:7px;cursor:pointer}.bottom .legend{flex-wrap:wrap;max-width:100%}.bottom .legend .color-scale{width:180px}@media(max-width:640px){.modelbar{gap:8px;padding:9px 10px}.modelbar select{font-size:11px;padding:8px 6px}.maptop .badge{min-width:155px;max-width:165px}.badge .model-select{width:145px;font-size:10px}.maptop .badge small{max-width:145px}.map-selection{top:172px;min-width:255px}.bottom .legend{gap:8px}.bottom .legend .color-scale{width:145px}.detailbutton{font-size:8px;padding:5px}.badge small{font-size:8px}}@media(max-width:360px){.bottom .legend .color-scale{width:120px}.map-selection{top:185px}.maptop .badge{min-width:135px;max-width:140px}.badge .model-select{width:120px}.maptop .badge small{max-width:120px}}
.place-label-icon,.place-label{background:none;border:0;pointer-events:none}.place-label{position:relative;white-space:nowrap;color:#172B4D;font-family:'DM Sans',sans-serif}.place-dot{position:absolute;left:-2px;top:-2px;width:4px;height:4px;border-radius:50%;background:#172B4D;box-shadow:0 0 0 1px #FFFFFFc0}.place-text{position:absolute;font-size:11px;font-weight:600;line-height:14px;text-shadow:-1px -1px 0 #FFFFFFdd,1px -1px 0 #FFFFFFdd,-1px 1px 0 #FFFFFFdd,1px 1px 0 #FFFFFFdd,0 0 4px #FFFFFF}.rank-0 .place-text,.rank-1 .place-text{font-size:12px;font-weight:800;line-height:16px}.rank-4 .place-text,.rank-5 .place-text{font-weight:500;font-size:10px}.geo-controls{display:flex;gap:4px;background:#FFFFFF;border-radius:11px;padding:4px;box-shadow:0 3px 12px #172B4D0d;pointer-events:auto;height:max-content}.geo-controls button{padding:8px 11px;background:#F4F5F7;border:0;border-radius:7px;font-size:11px;color:#0052CC;white-space:nowrap}.geo-controls button.tracking{background:#0052CC;color:white}#geo-stop{background:#F4F5F7;color:#172B4DB3}.geo-status{color:#0052CC!important;line-height:1.45;max-height:34px;overflow:auto;padding-top:6px;border-top:1px solid #F4F5F7;margin-top:6px!important}.map-selection{top:185px}.geo-marker-icon{background:transparent;border:0}.geo-dot{width:18px;height:18px;border:3px solid white;border-radius:50%;background:#0052CC;box-shadow:0 0 0 7px #0052CC26,0 1px 5px #172B4D40}.geo-dot.stale{background:#172B4DB3;box-shadow:0 0 0 5px #172B4D22}.geo-tooltip{border:0;background:#FFFFFF;color:#0052CC;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:700;box-shadow:0 2px 8px #172B4D1a}.geo-tooltip:before{display:none}.mapcontrols{max-width:690px}@media(max-width:640px){.map-selection{top:205px}.geo-controls{padding:3px}.geo-controls button{font-size:10px;padding:7px 9px}.mapcontrols{max-width:none}.geo-status{font-size:8px!important;max-height:34px}.maptop .badge{max-width:165px}.maptop .badge small{max-width:145px}}@media(max-width:360px){.map-selection{top:215px}.maptop .badge{max-width:140px}.maptop .badge small{max-width:120px}}
/* A clear map: one toolbar, one collapsible reading, one slim timeline. */
.compact-map-toolbar{position:absolute;z-index:720;top:12px;left:12px;right:12px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none;gap:10px}.compact-map-toolbar button{pointer-events:auto}.map-settings-trigger{display:flex;align-items:center;gap:10px;border:1px solid #DFE1E6;background:#FFFFFFf5;box-shadow:0 3px 14px #172B4D10;padding:8px 12px;border-radius:12px;min-height:44px;text-align:left;max-width:calc(100% - 64px)}.map-settings-trigger svg{width:22px;height:22px;color:var(--teal);flex:none}.map-settings-trigger b{display:block;font-size:11px;line-height:1.4}.map-settings-trigger small{display:block;font-size:9px;color:var(--muted);line-height:1.4}.settings-caret{font-size:16px;color:var(--muted);margin-left:6px}.geo-quick{display:flex;gap:5px;pointer-events:auto}.geo-quick #map-locate{width:44px;height:44px;padding:0;font-size:0;border:1px solid #DFE1E6;border-radius:12px;background:#FFFFFF;box-shadow:0 3px 14px #172B4D10;color:#0052CC}.geo-quick #map-locate:before{content:'⌖';font-size:25px}.geo-quick #map-locate.tracking{background:#0052CC;color:#FFFFFF;border-color:#0052CC}.geo-quick #geo-stop{border:1px solid #DFE1E6;border-radius:12px;width:34px;height:44px;font-size:12px}.map-toast{position:absolute;z-index:725;top:72px;right:12px;max-width:250px;padding:9px 12px;border:1px solid #DFE1E6;border-radius:10px;background:#FFFFFFf2;font-size:10px;line-height:1.5;box-shadow:0 3px 14px #172B4D10;pointer-events:none}.compact-bottom{left:50%;right:auto;bottom:18px;width:calc(100% - 24px);max-width:760px;transform:translateX(-50%)}.compact-bottom .timeline{display:grid;grid-template-columns:105px 28px minmax(0,1fr);align-items:center;gap:8px;height:48px;padding:7px 12px;border-radius:12px;border:1px solid #DFE1E6;background:#FFFFFFf5;box-shadow:0 3px 14px #172B4D10}.compact-bottom .timehead,.compact-bottom .sliderrow{display:contents}.compact-bottom .timehead b{font-size:10px;line-height:1.3;letter-spacing:-.1px;font-weight:600}.compact-bottom .timehead small,.compact-bottom .ticks{display:none}.compact-bottom .play{height:28px;width:28px;padding:0;font-size:11px}.compact-bottom input[type=range]{margin:0;width:100%;min-width:0;height:24px}.compact-point{top:auto!important;bottom:80px;left:50%;right:auto;transform:translateX(-50%);min-width:0!important;max-width:440px;width:calc(100% - 24px);padding:0;background:#FFFFFFf5;border:1px solid #DFE1E6;border-radius:12px;box-shadow:0 3px 14px #172B4D10}.compact-point summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:44px;padding:10px 12px}.compact-point summary::-webkit-details-marker{display:none}.point-summary-name{flex:1;min-width:0}.point-summary-name b{font-size:11px!important;max-width:none!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-point #map-summary-values{font-size:10px;white-space:nowrap;color:var(--teal);letter-spacing:-.15px}.point-chevron{font-size:15px;color:var(--muted)}.compact-point[open] .point-chevron{transform:rotate(180deg)}.point-expanded{padding:0 12px 9px}.compact-point .map-windvalues{margin-top:0;padding-top:11px;gap:12px}.point-expanded .textbutton{display:block;margin:8px 0 0 auto;font-size:11px}.leaflet-bottom.leaflet-left{bottom:142px}.leaflet-control-zoom a{width:32px!important;height:32px!important;line-height:32px!important}
#map-settings{width:390px;max-width:calc(100vw - 24px);max-height:80dvh;overflow:auto;margin:auto;border:1px solid var(--line);border-radius:20px;padding:22px;background:#F4F5F7;color:var(--ink);box-shadow:0 20px 90px #172B4D38}#map-settings::backdrop{background:#172B4D59;backdrop-filter:blur(2px)}.settings-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.settings-head h2{font-family:Manrope;font-size:20px;letter-spacing:-.6px}.settings-head p{font-size:11px;color:var(--muted);margin-top:5px}.settings-head button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#FFFFFF;font-size:24px;line-height:1}.setting-label{display:block;font-size:11px;font-weight:700;margin:18px 0 9px}#map-settings .badge{box-shadow:none;background:#FFFFFF;border:1px solid var(--line);border-radius:12px;padding:12px;min-width:0;max-width:none;font-size:11px}#map-settings .badge #maptitle,#map-settings .badge>i{display:none}#map-settings .badge .setting-label{margin:0 0 6px}#map-settings .model-select{width:100%;max-width:none;font-size:12px;padding:9px 0;margin:0}#map-settings .badge small{max-width:none;font-size:10px;line-height:1.5}#map-settings .geo-status{max-height:none;overflow:visible}#map-settings .mapcontrols{display:flex;flex-wrap:wrap;flex-direction:column;align-items:stretch;gap:12px;max-width:none}#map-settings .units{box-shadow:none;border:1px solid var(--line);justify-content:stretch;background:white;padding:4px;align-self:stretch}#map-settings .units button{flex:1;padding:10px 12px;font-size:12px}#map-settings .flow-controls{height:auto;min-height:42px;justify-content:space-between;box-shadow:none;border:1px solid var(--line);font-size:12px;padding:4px 12px 4px 4px}#map-settings .flow-controls button{font-size:12px;padding:10px 12px}#map-settings .flow-controls input{width:15px;height:15px}#map-settings .legend{display:flex;flex-wrap:wrap;gap:10px;background:#FFFFFF;border:1px solid var(--line);border-radius:12px;padding:12px;max-width:none;width:100%;font-size:10px;margin:0}#map-settings .color-scale{width:100%;order:3}#map-settings .detailbutton{font-size:10px;padding:8px}#map-settings .gust-mapnote{background:transparent;width:100%;max-width:none;margin:8px 0 0;padding:0;font-size:10px}
@media(max-width:640px){#map-settings{margin:auto 0 0;width:100%;max-width:none;max-height:76dvh;border-radius:22px 22px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom))}.compact-bottom{bottom:18px}.compact-point{bottom:80px}.compact-map-toolbar{top:10px;left:10px;right:10px}.map-settings-trigger{min-height:44px;padding:7px 10px;gap:8px}.compact-point summary{gap:7px;padding:10px}.compact-point #map-summary-values{font-size:9px}.point-summary-name b{font-size:11px!important}.compact-bottom .timeline{grid-template-columns:96px 28px minmax(0,1fr);gap:7px;padding:7px 10px}.compact-bottom .timehead b{font-size:9px}.map-toast{top:64px;right:10px}.leaflet-bottom.leaflet-left{bottom:138px}}
.compact-point .point-summary-name b{font-size:12px!important}@media(max-width:640px){.compact-point #map-summary-values{font-size:10px}.compact-bottom .timehead b{font-size:10px}}
.voyage-map-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #DFE1E6;border-radius:12px;background:#FFFFFF;box-shadow:0 3px 14px #172B4D10;color:var(--teal)}.voyage-map-button svg{height:22px;width:22px}.voyage-map-button.recording{background:#0052CC;color:#FFFFFF;border-color:#0052CC}.voyage-home-link{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:1px solid #DFE1E6;border-radius:13px;background:#F4F5F7;padding:14px;color:var(--teal);margin:-3px 0 19px}.voyage-home-link>span:first-child{font-size:25px}.voyage-home-link>span:nth-child(2){flex:1}.voyage-home-link b{display:block;font-size:12px}.voyage-home-link small{font-size:10px;display:block;margin-top:4px;color:#172B4DB3}.voyage-planning{position:absolute;z-index:725;top:67px;left:12px;right:12px;max-width:460px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#F4F5F7ff;border:1px solid #DFE1E6;border-radius:11px;padding:10px 12px;font-size:11px;color:#0052CC;box-shadow:0 3px 14px #172B4D10}.voyage-planning button{border:0;border-radius:7px;background:#0052CC;color:#FFFFFF;padding:8px 12px;font-size:11px}.voyage-live-pill{position:fixed;z-index:850;top:21px;right:max(78px,calc((100vw - 1040px)/2 + 52px));border:1px solid #DFE1E6;border-radius:30px;background:#F4F5F7;color:#0052CC;font-size:10px;font-weight:700;padding:7px 11px}.voyage-live-pill.paused{color:#0052CC;background:#F4F5F7;border-color:#172B4DB3}#voyage-panel{width:510px;max-width:calc(100vw - 24px);max-height:86dvh;overflow:auto;border:1px solid var(--line);border-radius:20px;background:#F4F5F7;color:var(--ink);padding:22px;box-shadow:0 20px 90px #172B4D38}#voyage-panel::backdrop{background:#172B4D59;backdrop-filter:blur(2px)}#voyage-panel input:not([type=checkbox]){width:100%;font-size:13px}.voyage-tabs{display:flex;border:1px solid var(--line);background:white;border-radius:11px;padding:4px;gap:4px;margin-bottom:18px}.voyage-tabs button{flex:1;border:0;border-radius:8px;background:none;color:var(--muted);font-size:11px;padding:10px 6px}.voyage-tabs button[aria-selected=true]{background:var(--teal);color:white}.voyage-label{display:block;font-size:11px;font-weight:700;margin:14px 0 7px}.voyage-wide{width:100%;margin:10px 0 0}.voyage-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;margin:10px 0}.voyage-note{font-size:10px;line-height:1.7;color:var(--muted);margin:13px 0}.voyage-route-summary{padding:16px;background:#FFFFFF;border:1px solid var(--line);border-radius:12px;margin-top:15px}.voyage-route-summary span,.voyage-route-summary small{display:block;font-size:10px;color:var(--muted)}.voyage-route-summary b{display:block;font-family:Manrope;font-size:22px;margin:7px 0}.route-points{margin:15px 0;padding:0;list-style:none;max-height:190px;overflow:auto}.route-points li{display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;font-size:11px}.route-points li span{min-width:0;line-height:1.6}.route-points small{display:block;color:var(--muted);font-size:10px}.route-points button{border:1px solid var(--line);border-radius:7px;background:white;padding:6px 8px;color:#0052CC}.voyage-subtitle{font-family:Manrope;font-size:15px;margin:24px 0 12px}.voyage-list{display:flex;flex-direction:column;gap:10px}.voyage-item{background:white;border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}.voyage-item h4{font-size:13px;margin:0 0 7px;overflow-wrap:anywhere}.voyage-item p{font-size:10px;line-height:1.6;color:var(--muted)}.voyage-item .voyage-actions{margin:10px 0 0;justify-content:flex-start;gap:7px}.voyage-item .btn{font-size:10px;padding:8px 9px}.voyage-message:not(:empty),.voyage-storage:not(:empty),.voyage-recovery{padding:10px 12px;background:#F4F5F7;color:var(--teal);border:1px solid #DFE1E6;border-radius:9px;font-size:11px;line-height:1.6;margin-bottom:12px}.voyage-storage:not(:empty){background:#DFE1E6;border-color:#DFE1E6;color:#0052CC}.voyage-recovery{background:#DFE1E6;color:#0052CC}.record-status{font-size:11px;color:var(--teal);line-height:1.6;margin:16px 0 7px}.voyage-speed{text-align:center;background:var(--ink);color:white;border-radius:16px;padding:20px}.voyage-speed strong{font-family:Manrope;font-size:55px;letter-spacing:-2px}.voyage-speed>span{color:#172B4DB3;margin-left:8px}.voyage-speed small{display:block;color:#172B4DB3;font-size:10px;margin-top:5px}.voyage-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.voyage-metrics div{border:1px solid var(--line);border-radius:10px;background:white;padding:12px}.voyage-metrics small{font-size:9px;display:block;color:var(--muted);margin-bottom:6px}.voyage-metrics b{font-family:Manrope;font-size:18px}.voyage-wake{display:flex;align-items:center;gap:7px;font-size:11px;margin:16px 0 8px}.voyage-wake input{accent-color:var(--teal)}.voyage-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 8px}.voyage-record-actions>*{flex:1;white-space:nowrap;padding:12px!important}.waypoint-icon{border:0;background:none}.waypoint-number{width:25px;height:25px;border:2px solid white;border-radius:50%;display:grid;place-items:center;background:#0052CC;color:white;font-size:11px;font-weight:700;box-shadow:0 1px 6px #172B4D33}.voyage-vessel{border:3px solid white;width:20px;height:20px;border-radius:50%;background:#0052CC;box-shadow:0 0 0 6px #0052CC2b}.voyage-vessel.paused{background:#172B4DB3;box-shadow:0 0 0 5px #172B4D22}.voyage-track-stat{font-size:11px;line-height:1.8;margin:12px 0}.voyage-gap-note{font-size:10px;color:#0052CC;line-height:1.6}@media(max-width:640px){#voyage-panel{margin:auto 0 0;width:100%;max-width:none;max-height:86dvh;border-radius:22px 22px 0 0;padding:20px 18px calc(20px + env(safe-area-inset-bottom))}.voyage-live-pill{top:20px;right:65px;padding:5px 8px;font-size:9px}.voyage-home-link{padding:12px}.voyage-home-link b{font-size:11px}.voyage-metrics b{font-size:17px}.voyage-map-button{width:40px}.geo-quick{gap:4px}.compact-map-toolbar .map-settings-trigger{max-width:calc(100% - 106px)}.map-settings-trigger>span:nth-child(2){min-width:0}.map-settings-trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:125px}.voyage-planning{font-size:10px}.voyage-speed strong{font-size:50px}}
.voyage-export-link{display:inline-block;font-weight:700;text-decoration:underline;margin-top:5px;padding:5px 0}

.route-calculation{font-size:13px;line-height:1.5;color:#172B4D;margin:8px 0 12px}.route-calculation.route-error{color:#0052CC}#route-retry{margin-bottom:12px}

.route-endpoints{display:grid;gap:8px;margin-top:16px}.route-endpoint{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:white;color:var(--ink)}.route-endpoint>span:nth-child(2){flex:1;min-width:0}.route-endpoint b{display:block;font-size:12px}.route-endpoint small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.route-letter{display:grid;place-items:center;background:#F4F5F7;color:var(--teal);border-radius:50%;width:28px;height:28px;font-size:12px;font-weight:700}.route-endpoint:disabled{opacity:.55}.route-endpoint:hover:enabled{border-color:var(--teal)}
.member-card{position:relative}.member-badge{display:inline-block;margin:10px 0 2px;padding:6px 10px;border:1px solid #DFE1E6;background:#F4F5F7;border-radius:24px;font-size:11px;color:var(--teal)}.account-email{font-size:13px;color:var(--ink);overflow-wrap:anywhere;margin:8px 0}.account-actions{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:17px 0 3px}.account-actions a{text-decoration:none;font-size:12px;padding:11px 16px;border-radius:9px}.account-actions .primary{display:inline-block}#account-message:not(:empty){padding-top:12px;color:#0052CC}#account-form-title{font-family:Manrope;font-size:17px;margin:0 0 18px}.settings input:disabled,.settings select:disabled{opacity:.6}#account-save{width:100%}

.brand-logo{display:block;width:46px;height:46px;object-fit:contain;flex-shrink:0}.account-brand-logo{display:block;object-fit:contain;width:76px;height:76px;margin:0 auto 10px}.member-card .profileavatar{display:none}@media(max-width:640px){.brand-logo{width:40px;height:40px}.account-brand-logo{width:68px;height:68px}}

/* WindTUR · five-colour interface palette */
:root{--white:#FFFFFF;--bg:#F4F5F7;--line:#DFE1E6;--teal:#0052CC;--ink:#172B4D;--muted:#172B4DB3}body{background:var(--bg)}.primary:hover{background:var(--ink)}button:focus-visible,a:focus-visible{outline-color:var(--teal)}.windcard{background:var(--ink)}.windcard .cardtop,.windcard .unit,.windcard .direction,.windfooter{color:#FFFFFFCC}.hour.active{background:var(--bg);border-color:var(--teal)}.hour .hour-gust,.hour small.hour-gustlabel,.map-windvalues div:nth-child(2) strong{color:var(--teal)}.stars{color:var(--teal)}.avatar,.locationicon,.profileavatar,.route-letter{background:var(--bg);color:var(--teal)}.bottomnav button{border-color:var(--line);background:var(--bg);color:var(--muted)}.bottomnav button.active{background:var(--teal)!important;color:var(--white)}.voyage-hub{margin:0 0 22px}.hub-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.hub-heading h2{font-family:Manrope;font-size:17px;letter-spacing:-.35px}.hub-heading>span{font-size:10px;color:var(--muted)}.voyage-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.voyage-entry{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:16px;color:var(--ink);min-width:0;transition:border-color .18s,transform .18s}.voyage-entry:hover{border-color:var(--teal);transform:translateY(-1px)}.entry-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--bg);color:var(--teal);margin-bottom:5px}.entry-icon svg{width:22px;height:22px}.voyage-entry b{font-size:14px;font-weight:700}.voyage-entry small{font-size:10px;line-height:1.5;color:var(--muted)}.entry-arrow{position:absolute;right:16px;top:18px;color:var(--teal);font-size:19px}.voyage-tabs{background:var(--bg);border:0;padding:4px;position:sticky;top:-22px;z-index:5}.voyage-tabs button{font-weight:600;padding:11px 7px}.voyage-tabs button[aria-selected=true]{background:var(--teal);color:var(--white)}#voyage-panel{background:var(--white)}.voyage-intro{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 16px}.route-endpoints{gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:0 0 8px}.route-endpoint{border:0;border-radius:0;padding:14px;background:var(--white);min-height:70px}.route-endpoint+ .route-endpoint{border-top:1px solid var(--line)}.route-letter{width:30px;height:30px}.voyage-wide{margin-top:10px;min-height:44px;font-size:12px}.voyage-route-summary{display:grid;grid-template-columns:1fr auto;align-items:center;background:var(--bg);border:0;padding:14px 16px;margin-top:17px}.voyage-route-summary b{grid-column:1;grid-row:2;font-size:23px}.voyage-route-summary small{grid-column:2;grid-row:1/3;justify-self:end}.route-calculation{font-size:11px;line-height:1.6;color:var(--muted);margin:10px 0 14px}.route-calculation.route-error{color:var(--ink);font-weight:600}.voyage-main-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 20px}.voyage-main-actions>button{min-height:44px;font-size:12px}.voyage-fold{border-top:1px solid var(--line);padding:14px 0;font-size:12px}.voyage-fold summary{color:var(--ink);font-weight:600;cursor:pointer;min-height:20px}.voyage-fold[open] summary{margin-bottom:14px}.voyage-fold .voyage-list{margin-top:12px}.voyage-help .voyage-note{margin-bottom:0}.record-status{padding:9px 12px;background:var(--bg);border-radius:9px;font-size:11px;margin:0 0 10px}.voyage-record-actions{margin:0 0 14px;display:flex;gap:8px}.voyage-record-actions>button{min-height:46px;font-size:13px;flex:1}.voyage-speed{padding:18px;background:var(--ink);border-radius:16px}.voyage-speed>small{font-size:10px;color:#FFFFFFCC}.voyage-speed>div{display:flex;align-items:baseline;justify-content:center;gap:9px;margin:7px 0}.voyage-speed strong{font-size:52px}.voyage-speed span{color:#FFFFFFCC;font-size:15px}.voyage-metrics{gap:9px}.voyage-metrics div{background:var(--bg);border:0;padding:13px;border-radius:10px}.voyage-metrics small{font-size:10px}.voyage-metrics b{font-size:18px}.voyage-message:not(:empty),.voyage-storage:not(:empty),.voyage-recovery{background:var(--bg);border-color:var(--line);color:var(--ink)}.route-points{margin-bottom:0}.member-badge{background:var(--bg);border-color:var(--line)}.waypoint-number{background:var(--teal)}.voyage-vessel{background:var(--ink);box-shadow:0 0 0 6px #172B4D22}.voyage-planning{background:var(--white);border-color:var(--line);color:var(--ink)}.voyage-planning button{background:var(--teal)}.voyage-map-button.recording{background:var(--ink);border-color:var(--ink)}.voyage-live-pill,.voyage-live-pill.paused{background:var(--bg);border-color:var(--line);color:var(--teal)}@media(max-width:640px){.voyage-entry-grid{gap:10px}.voyage-entry{padding:14px 12px;border-radius:14px}.entry-arrow{right:12px;top:15px}.voyage-entry b{font-size:13px}.voyage-entry small{font-size:9px}.hub-heading h2{font-size:16px}.voyage-tabs{top:-20px}.voyage-metrics b{font-size:17px}.bottomnav button.active:before{display:none}}
.route-start-note{text-align:center;margin:7px 0 14px}.route-itinerary{list-style:none;padding:0;margin:12px 0;max-height:245px;overflow:auto}.itinerary-step{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.6;padding:10px 7px;border-bottom:1px solid var(--line)}.itinerary-number{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;background:var(--bg);border-radius:50%;color:var(--muted);font-size:10px}.itinerary-step.current{background:var(--bg);border-radius:9px;color:var(--teal);font-weight:700}.itinerary-step.current .itinerary-number{background:var(--teal);color:white}.navigation-map{position:absolute;z-index:730;top:67px;left:12px;right:12px;max-width:430px;margin:auto;background:white;border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:0 4px 20px #172B4D15}.navigation-map-head,.navigation-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.navigation-map-head>b{font-size:11px;color:var(--teal)}.navigation-map-head .textbutton{padding:0;font-size:11px}.navigation-numbers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}.navigation-numbers small{display:block;font-size:9px;color:var(--muted);margin-bottom:4px}.navigation-numbers strong{font-family:Manrope;font-size:22px;line-height:1.2}.navigation-numbers>div:nth-child(2) strong{font-size:17px}.navigation-map p{font-size:10px;line-height:1.5;margin:7px 0}.navigation-map>small{display:block;border-top:1px solid var(--line);padding-top:7px;font-size:10px;color:var(--muted)}.navigation-active .compact-point,.navigation-active .map-toast{display:none!important}.navigation-detail{border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:16px}.navigation-detail-head h3{font-size:14px;overflow-wrap:anywhere}.navigation-detail-head .btn{font-size:10px;flex-shrink:0}#navigation-status,#navigation-remaining{font-size:11px;line-height:1.6;margin:8px 0;color:var(--muted)}

.voyage-heading{width:32px;height:32px;filter:drop-shadow(0 2px 5px #172B4D66)}.voyage-heading svg{display:block;width:32px;height:32px}.voyage-vessel{margin:6px}.navigation-follow{display:flex;align-items:center;gap:8px;margin:9px 0}.navigation-follow .btn{font-size:10px;padding:7px 9px;min-height:32px}.navigation-follow span{margin-left:auto;font-size:9px;color:var(--muted)}

.cloud-card{border:1px solid var(--line);border-radius:16px;padding:18px;margin-top:20px;text-align:left}.cloud-card h3{font-size:16px;margin:0 0 9px}.cloud-card p{font-size:12px;line-height:1.7;color:var(--muted)}.cloud-card #cloud-status{background:var(--bg);border-radius:9px;padding:10px;color:var(--ink)}.cloud-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.cloud-actions button{font-size:12px;min-height:42px}.cloud-card small{display:block;font-size:11px;color:var(--muted);margin-top:8px}

.firebase-google{display:block;width:100%;min-height:48px;border:1px solid #DFE1E6;border-radius:10px;background:#FFFFFF;color:#172B4D;font:600 14px Manrope,sans-serif;margin:18px 0 10px;cursor:pointer}.firebase-google:before{content:"G";font-weight:800;margin-right:12px;color:#0052CC;font-size:18px}.firebase-google:hover{background:#F4F5F7}.firebase-google:disabled{opacity:.55;cursor:wait}
