body:has(.sky-lab) .wave-background,body:has(.sky-lab):after,body:has(.sky-lab):before{display:none}.sky-lab{position:relative;z-index:1;min-height:100svh;background:#f6f4ef;color:#173b4d;font-family:Trebuchet MS,Segoe UI,sans-serif}.sky-stage{position:relative;height:100svh;min-height:580px;overflow:hidden;background:#436d9b}.sky-scenery{--celestial-size:clamp(56px,6.6vw,108px);position:absolute;inset:0;background:linear-gradient(var(--sky-top),var(--sky-horizon) var(--horizon),#18334d)}.sky-stars{position:absolute;inset:0 0 auto;height:var(--horizon);pointer-events:none;-webkit-mask-image:linear-gradient(#000 45%,transparent);mask-image:linear-gradient(#000 45%,transparent)}.sky-stars span{position:absolute;aspect-ratio:1;border-radius:50%;background:#e5edff}.sky-body-space,.sky-clouds,.sky-wave-color{position:absolute;inset:0;pointer-events:none}.sky-body-space{-webkit-clip-path:inset(0 0 calc(100% - var(--horizon)) 0);clip-path:inset(0 0 calc(100% - var(--horizon)) 0)}.sky-moon,.sky-sun{position:absolute;width:var(--celestial-size);height:auto;aspect-ratio:1;transform:translate(-50%,-50%)}.sky-sun{border-radius:50%;box-shadow:0 0 25px 7px currentColor}.sky-moon svg{width:100%;height:100%;display:block}.sky-asset-loader{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sky-coast{inset:0;width:100%;height:100%}.sky-coast,.sky-water-motion{position:absolute;pointer-events:none;filter:brightness(var(--sea-light)) saturate(var(--sea-saturation))}.sky-water-motion{top:var(--horizon);height:var(--water-depth);left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(#000,#000 92%,transparent);mask-image:linear-gradient(#000,#000 92%,transparent)}.sky-water-poster,.sky-water-video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.sky-water-video[hidden]{display:none}.sky-wave-color{background:linear-gradient(transparent var(--horizon),rgba(237,104,121,var(--twilight)) var(--shoreline),rgba(167,88,132,var(--twilight)));opacity:.38;mix-blend-mode:color}.sky-reflection{position:absolute;inset:0;-webkit-clip-path:inset(var(--horizon) 0 calc(100% - var(--calm-water-end)) 0);clip-path:inset(var(--horizon) 0 calc(100% - var(--calm-water-end)) 0);-webkit-mask-image:linear-gradient(#000 calc(var(--calm-water-end) - 1%),transparent var(--calm-water-end));mask-image:linear-gradient(#000 calc(var(--calm-water-end) - 1%),transparent var(--calm-water-end));pointer-events:none}.sky-reflected-body{position:absolute;width:var(--celestial-size);aspect-ratio:1;transform:translate(-50%,-50%) scaleY(-1)}.sky-reflected-disc{width:100%;height:100%;display:block;overflow:visible;animation:sky-water-shimmer 11s ease-in-out infinite alternate}@keyframes sky-water-shimmer{0%{transform:translateX(-.35px)}to{transform:translateX(.35px)}}.sky-clouds{background:radial-gradient(ellipse at 15% 10%,#8595a0 0,#8494a0c0 12%,transparent 40%),radial-gradient(ellipse at 69% 3%,#768796 0,#8294a0d0 23%,transparent 60%),linear-gradient(#53657480,#8295a350 var(--horizon),transparent var(--shoreline))}.sky-rain{position:absolute;inset:0;overflow:hidden;pointer-events:none}.sky-rain span{position:absolute;top:0;width:1px;height:100%;animation:sky-rain-fall linear infinite}.sky-rain span:before{content:"";display:block;width:1px;height:var(--drop-length);background:linear-gradient(transparent,#d9e7ee);transform:rotate(-5deg)}.sky-scenery[data-thunderstorm=true] .sky-clouds{background:radial-gradient(ellipse at 25% 5%,#202a3ded,transparent 65%),radial-gradient(ellipse at 80% 15%,#354054e8,transparent 68%),linear-gradient(#263247b0,#56627350 var(--horizon),transparent var(--shoreline))}.sky-scenery[data-thunderstorm=true] .sky-rain span{animation-name:sky-storm-rain-fall}.sky-scenery[data-thunderstorm=true] .sky-rain span:before{transform:rotate(-12deg)}.sky-lightning{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 70% 10%,#dbe9ffb0,#b6c8e733 35%,transparent 65%);animation:sky-lightning 18s linear infinite}.sky-lightning svg{width:100%;height:100%;transform:scale(1.22);transform-origin:70% 0}.sky-lightning path{fill:none;stroke:#e4eeff;stroke-width:2.5;stroke-linejoin:round;filter:drop-shadow(0 0 5px #bed6ff)}@keyframes sky-lightning{0%,3%,9%,to{opacity:0}4.5%{opacity:.32}6%{opacity:.12}}@keyframes sky-rain-fall{0%{transform:translate3d(-48px,-30px,0)}to{transform:translate3d(0,100%,0)}}@keyframes sky-storm-rain-fall{0%{transform:translate3d(-120px,-30px,0)}to{transform:translate3d(0,100%,0)}}@media (prefers-reduced-motion:reduce){.sky-rain{display:none}.sky-lightning{display:none;animation:none}.sky-rain span,.sky-reflected-disc{animation:none}}.sky-home-intro{position:absolute;z-index:2;top:max(65px,5svh);left:max(24px,calc((100% - 1240px) / 2));width:min(440px,46vw);max-width:calc(100% - 48px);font-family:Georgia,Times New Roman,serif}.sky-home-intro .intro{width:100%;max-width:none}.sky-home-links{display:flex;gap:12px;width:100%;margin-top:16px}.sky-home-links .map-link{flex:1 1;min-width:0;width:auto}.sky-mobile-links{display:none}.sky-home-media{position:absolute;right:max(10vw,calc((100% - 1240px) / 2));bottom:6svh}.sky-home-media .collage-stack:before{display:none}.sky-home-media .collage-piece{pointer-events:auto}.sky-control-dock{position:absolute;z-index:5;bottom:22px;left:22px;width:220px}.sky-control-tabs{display:flex;flex-direction:column;gap:7px}.sky-control-tabs button{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;grid-gap:11px;gap:11px;width:100%;min-height:50px;padding:11px 14px;border:1px solid #c1cbc9;border-radius:8px;color:#244957;background:#f8f7f1f5;text-align:left;font:14px/1.35 Trebuchet MS,sans-serif;cursor:pointer;transition:background .12s ease,color .12s ease}.sky-control-tabs button svg{width:22px;height:22px}.sky-control-tabs button span{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sky-control-tabs button:hover{background:#e1eceb}.sky-control-tabs button[aria-selected=true]{background:#173b4d;color:#fff;border-color:#173b4d}.sky-controls{position:absolute;bottom:0;left:calc(100% + 12px);width:340px;max-width:calc(100vw - 276px);max-height:calc(100svh - 108px);overflow-y:auto;overscroll-behavior:contain;padding:22px;color:#173b4d;background:#f8f7f2;border:1px solid #d0d8d3;border-radius:10px;animation:sky-panel-enter .15s ease-out}.sky-controls-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.sky-controls h2{margin:0;font:normal 1.65rem Georgia,serif}.sky-controls h3{margin:22px 0 10px;font:normal 1rem Georgia,serif}.sky-controls p{font-size:13px;line-height:1.6;color:#546c77}.sky-controls button{min-height:36px;border:1px solid #b8c8ca;border-radius:6px;background:#fffdf8;color:#173b4d;padding:8px 11px;font:12px Trebuchet MS,sans-serif;cursor:pointer}.sky-controls button:hover{background:#e3edef}.sky-controls button:active{background:#c8dde3}.sky-controls button[aria-pressed=true]{background:#173b4d;color:#fff}.sky-controls button:disabled{opacity:.5;cursor:wait}.sky-control-dock :focus-visible{outline:3px solid #1781a5;outline-offset:3px}.sky-controls .sky-panel-close{border-color:transparent;background:transparent;min-height:32px;padding:6px}.sky-panel-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.sky-panel-summary>span{font-size:11px;color:#61757d}.sky-now{flex-shrink:0}.sky-panel-field{display:flex;flex-direction:column;gap:9px;font-size:12px}.sky-controls input:not([type=range]):not([type=radio]){width:100%;min-width:0;height:44px;color:#173b4d;border:1px solid #bdccce;border-radius:5px;background:#fffefa;padding:8px 10px;font:15px Trebuchet MS,sans-serif}.sky-weather-options{margin:0;padding:0;border:0;min-width:0}.sky-weather-options legend{padding:0;margin-bottom:12px;font-size:12px;color:#546c77}.sky-weather-choice{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;grid-gap:12px;gap:12px;min-height:56px;padding:12px 16px;margin-bottom:8px;border:1px solid #d3dcd7;border-radius:8px;background:#fffdf8;cursor:pointer;transition:background .12s ease,border-color .12s ease}.sky-weather-choice:last-child{margin-bottom:0}.sky-weather-choice>svg{width:24px;height:24px;color:#58757b}.sky-weather-choice>span{font-size:14px;line-height:1.4;color:#173b4d}.sky-weather-choice:hover{background:#edf3ef;border-color:#a4bab4}.sky-weather-choice:has(:checked){background:#e4efea;border-color:#39756b}.sky-weather-choice:has(:checked)>svg{color:#28665e}.sky-weather-choice:focus-within{outline:3px solid #1781a5;outline-offset:2px}.sky-weather-choice input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin:0;padding:0;border:1.5px solid #9cafa8;border-radius:50%;background:#fffdf8;cursor:pointer}.sky-weather-choice input:checked{background:#28665e;border-color:#28665e;box-shadow:inset 0 0 0 4px #fffdf8}.sky-weather-choice input:focus-visible{outline:none}.sky-clock-field{border:0;padding:0;margin:0 0 22px;min-width:0}.sky-clock-field legend{padding:0;margin-bottom:8px;font-size:12px}.sky-clock-inputs{display:flex;align-items:center;gap:8px}.sky-clock-inputs input{text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sky-slider-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:13px}.sky-slider{display:block;width:100%;height:24px;margin:0;accent-color:#236f91;cursor:pointer}.sky-event-track{position:relative;height:14px;margin:0 9px 10px}.sky-event-track span{position:absolute;top:0;height:7px;width:2px;background:#b08e6a}.sky-event-track .sky-current-marker{background:#236f91;height:11px}.sky-events{display:grid;grid-template-columns:1fr 1fr;grid-gap:7px;gap:7px}.sky-events button{text-align:left}.sky-events span{display:block;font-size:11px;margin-bottom:4px}.sky-events strong{font-size:12px}.sky-positions{display:flex;gap:20px;margin-top:20px;padding-top:10px;border-top:1px solid #d8dfdc}.sky-positions p{flex:1 1;font-size:12px}.sky-positions strong{display:block;color:#173b4d}.sky-positions small{display:block;line-height:1.4;margin-top:4px}.sky-note{margin-top:14px;font-size:11px!important}.sky-note a{color:#236f91}.sky-input-error{margin:16px 0 0;color:#9a342a!important}.sky-shortcuts{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:16px}.sky-about{margin-top:20px;border-top:1px solid #d8dfdc;padding-top:16px}.sky-about summary{font-size:12px;cursor:pointer}.sky-asset-status{padding:8px 12px;font-size:14px}.sky-asset-status,.sky-water-status{position:absolute;z-index:6;left:16px;bottom:16px;max-width:calc(100% - 32px);background:#fffdf1}.sky-water-status{padding:9px 12px;color:#173b4d;border-radius:6px;font-size:13px;line-height:1.5}.sky-water-status button{margin-left:10px;min-height:36px;padding:6px 10px;border:1px solid #b8c8ca;border-radius:5px;background:#fffdf8;color:inherit;cursor:pointer}.sky-water-status button:focus-visible{outline:3px solid #1781a5;outline-offset:3px}@keyframes sky-panel-enter{0%{opacity:0;transform:translateX(5px)}to{opacity:1;transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.sky-controls{animation:none}.sky-control-tabs button,.sky-weather-choice{transition:none}}@media (max-width:1024px){.sky-home-media{right:clamp(84px,calc(16vw + 8px),148px)}}@media (max-width:700px){.sky-stage{min-height:600px}.sky-home-intro{top:76px;left:12px;width:min(340px,calc(100% - 24px));max-width:none}.sky-home-links{display:none}.sky-home-media{left:50%;right:auto;transform:translateX(-50%)}.sky-control-dock{position:fixed;bottom:16px;left:12px;width:46px}.sky-mobile-links{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}.sky-mobile-links .home-icon-link{display:grid;place-items:center;width:46px;height:46px;border:1px solid #c1cbc9;border-radius:8px;color:#244957;background:#f8f7f1f5;transition:background .12s ease}.sky-mobile-links .home-icon-link svg{width:22px;height:22px}.sky-mobile-links .home-icon-link:hover{background:#e1eceb}.sky-mobile-links .home-icon-link:active{background:#c8dde3}.sky-control-tabs{gap:6px}.sky-control-tabs button{display:grid;grid-template-columns:1fr;place-items:center;grid-gap:0;gap:0;width:46px;height:46px;min-height:46px;padding:0}.sky-control-tabs button>span{display:none}.sky-controls{bottom:0;left:calc(100% + 10px);width:min(340px,calc(100vw - 80px));max-width:none;padding:17px;max-height:calc(100svh - 96px);min-height:160px}.sky-panel-summary{align-items:flex-start;flex-direction:column}}@media (max-width:430px){.sky-home-media .avatar{height:min(59svh,560px,calc(100svh - 320px))}}@media (prefers-reduced-motion:reduce){.sky-mobile-links .home-icon-link{transition:none}}