#loading{position:fixed;inset:0;z-index:1000;display:block;overflow:hidden;background:#092e40;color:#edf4f9;font:14px/1.5 system-ui,sans-serif;touch-action:none;user-select:none;isolation:isolate;transition:opacity .12s ease,visibility .12s;opacity:1}
#loading[hidden]{display:none!important}#loading.done{opacity:0;pointer-events:none;visibility:hidden}
#loading:focus{outline:none}#loading:focus-visible{outline:2px solid #bdd9ed;outline-offset:-8px}
#loading .loading-water{position:absolute;inset:-15%;background:radial-gradient(ellipse at 50% 15%,#3b6688a1,transparent 55%),radial-gradient(ellipse at 15% 80%,#365b7666,transparent 50%);animation:loading-water-drift 14s ease-in-out infinite alternate;pointer-events:none}
#loading .loading-orbit{position:absolute;left:50%;top:50%;width:min(82vw,700px);aspect-ratio:1;border:1px solid #8adbc515;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
#loading .loading-orbit:before,#loading .loading-orbit:after{content:"";position:absolute;inset:12%;border:1px solid #8adbc510;border-radius:50%}#loading .loading-orbit:after{inset:-14%;border-style:dashed;opacity:.5}
#loading .loading-brand{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(72vw,400px);height:auto;pointer-events:none;filter:drop-shadow(0 8px 25px #001c3a22)}
#loading .loading-caption{position:absolute;z-index:2;top:calc(50% + clamp(45px,7vw,68px));left:20px;right:20px;text-align:center;margin:0;color:#b0c2d0;font-size:clamp(12px,2.5vw,15px);letter-spacing:.05em;pointer-events:none}
#loading .loading-status{position:absolute;z-index:2;top:calc(50% + clamp(95px,13vw,132px));left:16px;right:16px;text-align:center;color:#b0c2d0;font-size:11px;letter-spacing:.04em;pointer-events:none}
#loading .loading-life{position:absolute;inset:0;overflow:hidden;pointer-events:none}
#loading .loading-bubble{position:absolute;bottom:-30px;left:var(--left);width:var(--size);height:var(--size);border:1px solid #a4eee344;border-radius:50%;background:radial-gradient(circle at 30% 25%,#d6fff041,transparent 38%);animation:loading-rise var(--duration) linear var(--delay) infinite;pointer-events:none;will-change:transform}
#loading .loading-ripple{position:absolute;width:64px;height:58px;border-radius:50%;border:1px solid #b5f8ef80;box-shadow:0 -2px 3px #baffef2b,0 3px 4px #001e3870,inset 0 2px 3px #c3fff13b,inset 0 -2px 3px #00293d66;background:radial-gradient(ellipse,transparent 55%,#b4f7e70c 66%,transparent 73%);pointer-events:none;will-change:transform,opacity}
#loading.is-suspended *,#loading.done *{animation-play-state:paused!important}
@keyframes loading-water-drift{from{transform:translate(-2%,-1%) scale(1)}to{transform:translate(3%,2%) scale(1.05)}}
@keyframes loading-rise{from{transform:translate3d(0,0,0)}to{transform:translate3d(35px,-115vh,0)}}
@media(prefers-reduced-motion:reduce){#loading{transition:none}#loading .loading-water,#loading .loading-bubble{animation:none}#loading .loading-bubble{bottom:var(--left)}}
@media(max-height:500px){#loading .loading-brand{width:230px;top:38%}#loading .loading-caption{top:calc(38% + 38px)}#loading .loading-status{top:calc(38% + 72px)}}

#loading .loading-progress{position:absolute;z-index:1;left:50%;top:50%;width:min(86vw,520px,76dvh);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}
#loading .loading-progress svg{display:block;width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}
#loading .loading-progress-track,#loading .loading-progress-fill{fill:none;stroke-width:1.2}
#loading .loading-progress-track{stroke:#d8eaf720}
#loading .loading-progress-fill{stroke:#bdd9ed;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .18s ease;filter:drop-shadow(0 0 1px #bdd9ed65)}
#loading .loading-brand{top:50%;width:min(58vw,280px,40dvh);transform:translate(-50%,-72%)}
#loading .loading-orbit{display:none}
#loading .loading-caption{top:calc(50% + min(16vw,92px,13dvh));font-size:clamp(10px,2.6vw,14px)}
#loading .loading-status{top:calc(50% + min(29vw,170px,25dvh));left:50%;right:auto;transform:translateX(-50%);width:min(65vw,320px)}
#loading .loading-progress-heading{display:flex;justify-content:center;align-items:center}
#loading #loading-percent{font-size:20px;font-weight:650;font-variant-numeric:tabular-nums;color:#d8eaf7;letter-spacing:.02em}
#loading .loading-status>[role=status]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){#loading .loading-progress-fill{transition:none}}
@media(max-height:500px){#loading .loading-caption{display:none}#loading .loading-status{top:calc(50% + 24dvh)}#loading #loading-percent{font-size:16px}}
