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{opacity:0;transition:opacity .7s ease}.sky-water-video[data-visible=true]{opacity:1}.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{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-note{margin-top:14px;font-size:11px!important}.sky-note a{color:#236f91}.sky-input-error{margin:16px 0 0;color:#9a342a!important}.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{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:0;border-radius:0;color:#244957;background:transparent;transition:transform .12s ease,filter .12s ease}.sky-mobile-links .home-icon-link svg{width:44px;height:44px}.sky-mobile-links .home-icon-link:hover{transform:translateY(-1px);filter:brightness(1.08)}.sky-mobile-links .home-icon-link:active{transform:scale(.96)}.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}}.sky-instrument-face{width:100%;max-width:280px;margin:0 auto;position:relative;aspect-ratio:1;color:#244550}.sky-dial-rim{fill:#b79a61;stroke:#806c46;stroke-width:1}.sky-dial-inner{fill:#fcf8e9;stroke:#dfd2b5;stroke-width:2}.sky-clock-face{touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab}.sky-clock-face[data-held]{cursor:-webkit-grabbing;cursor:grabbing}.sky-clock-face>svg{display:block;width:100%;overflow:visible}.sky-hour-tick{stroke:#294650;stroke-width:2}.sky-minute-tick{stroke:#7d8a83;stroke-width:1}.sky-clock-face text{fill:#294650;font:19px Georgia,serif;text-anchor:middle}.sky-clock-hand{stroke:#294650;stroke-linecap:round}.sky-hand-hours{stroke-width:7}.sky-hand-minutes{stroke-width:3}.sky-clock-face [role=slider]{cursor:-webkit-grab;cursor:grab;outline:none}.sky-clock-face:not([data-highlight]) [role=slider]:focus-visible .sky-clock-hand,.sky-clock-face[data-highlight=hours] .sky-hand-hours,.sky-clock-face[data-highlight=minutes] .sky-hand-minutes{stroke:#b05d36;filter:drop-shadow(0 0 3px #b05d3655)}.sky-clock-pin{fill:#a5743e;stroke:#7f613b;stroke-width:1;pointer-events:none}.sky-controls .sky-instrument-help{margin:14px 0;font-size:12px;line-height:1.55;text-align:center}.sky-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.sky-barometer-face{display:block;width:100%}.sky-barometer-needle{transform-origin:140px 180px;transition:transform .55s cubic-bezier(.2,.7,.2,1);fill:#a75f3b}.sky-calendar-heading{grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-bottom:14px}.sky-calendar-heading strong{grid-row:1;grid-column:1/-1;font:20px Georgia,serif;padding-bottom:4px}.sky-calendar-heading button{font-size:11px}.sky-calendar-days,.sky-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:2px;gap:2px}.sky-calendar-weekdays{margin-bottom:6px}.sky-calendar-weekdays span{text-align:center;font-size:10px;line-height:24px;color:#627575;overflow:hidden}.sky-controls .sky-calendar-days button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:49px;width:100%;padding:4px 0;border:1px solid transparent;background:transparent;font-size:12px;border-radius:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sky-controls .sky-calendar-days button:hover{background:#eee7d7}.sky-controls .sky-calendar-days button[aria-pressed=true]{color:#fff;background:#294b57}.sky-calendar-days svg{display:block;width:17px;height:17px;overflow:visible}.sky-calendar-moon-dark{fill:#23394a;stroke:#9da49c;stroke-width:2}.sky-calendar-days path{fill:#f3dca0}@media (max-width:700px){.sky-calendar-heading strong{font-size:18px}}@media (prefers-reduced-motion:reduce){.sky-barometer-needle,.sky-controls .sky-barometer [role=radio]{transition:none}}.sky-calendar-heading button:disabled{cursor:not-allowed}.sky-control-dock{width:52px}.sky-control-tabs button{display:grid;grid-template-columns:1fr;place-items:center;width:52px;height:56px;min-height:56px;grid-gap:0;gap:0;padding:0;border:0;border-radius:50%;background:transparent}.sky-control-tabs button:hover{background:transparent}.sky-control-tabs button[aria-selected=true]{background:transparent;box-shadow:none}.sky-control-tabs button>.sky-instrument-mini{display:block;position:relative;width:50px;height:50px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:visible}.sky-control-tabs button .sky-instrument-mini svg{width:100%;height:auto}.sky-control-tabs button>.sky-instrument-mini-date{height:56px}.sky-instrument-mini-date .sky-moon-calendar{position:absolute;width:340px;left:0;top:0;transform:scale(.147);transform-origin:left top}.sky-control-tabs button .sky-calendar-days svg{width:17px;height:17px}.sky-controls.sky-dial-panel{width:min(280px,calc(100vw - 80px),calc(100svh - 48px));max-height:none;min-height:0;padding:0;background:transparent;border:0;border-radius:50%;overflow:visible}.sky-controls.sky-calendar-panel{width:min(340px,calc(100vw - 80px));max-height:calc(100svh - 32px);min-height:0;padding:0;border:0;border-radius:10px;background:transparent;overflow-y:auto}.sky-moon-calendar{padding:14px;color:#294650;border:1px solid #d1c5aa;border-radius:10px;background:#fcf8e9}.sky-calendar-heading{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;grid-gap:4px;gap:4px;margin-bottom:8px}.sky-calendar-heading strong{grid-row:auto;grid-column:auto;padding:0;font:18px Georgia,serif;text-align:center}.sky-controls .sky-calendar-heading .sky-month-nav,.sky-month-nav{display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:7px;border:0;border-radius:50%;color:#294650;background:transparent}.sky-month-nav svg{width:22px;height:22px}.sky-controls .sky-month-nav:hover{background:#e9e0cc}.sky-calendar-day,.sky-controls .sky-calendar-days button{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-height:44px;height:44px;padding:5px 0 2px;font:12px Trebuchet MS,sans-serif;color:#294650;border-radius:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sky-calendar-day[data-selected=true]{color:#fff;background:#294b57}.sky-instrument-mini-weather .sky-weather-instrument{position:absolute;left:0;top:calc(50% - 14.286px);width:280px;transform:scale(.17857);transform-origin:left top}@media (max-width:700px){.sky-control-dock{width:46px}.sky-control-tabs button{width:46px;height:46px;min-height:46px}.sky-control-tabs button>.sky-instrument-mini{width:44px;height:44px}.sky-control-tabs button>.sky-instrument-mini-date{width:44px;height:46px}.sky-instrument-mini-date .sky-moon-calendar{transform:scale(.1294)}.sky-instrument-mini-weather .sky-weather-instrument{top:calc(50% - 12.571px);transform:scale(.15714)}}.sky-barometer{width:100%;position:relative;aspect-ratio:280/160}.sky-barometer-shell{fill:#fcf8e9;stroke:#ad905b;stroke-width:5;stroke-linejoin:round}.sky-controls .sky-barometer [role=radio],.sky-weather-marker{position:absolute;top:var(--icon-y);left:var(--icon-x);transform:translate(-50%,-50%);display:block;width:44px;height:44px;min-height:0;padding:10px;border:0;border-radius:0;background:transparent;color:#536764}.sky-controls .sky-barometer [role=radio] svg,.sky-weather-marker svg{display:block;width:100%;height:100%}.sky-controls .sky-barometer [role=radio][aria-checked=true],.sky-weather-marker[data-selected=true]{color:#a75f3b;background:transparent;border:0}.sky-controls .sky-barometer [role=radio]:hover{color:#a75f3b;background:transparent}.sky-control-tabs button>.sky-instrument-mini-weather{display:grid;align-items:center}@media (prefers-reduced-motion:reduce){.sky-water-video{transition:none}}