/* Real loading UI over the approved artwork, shared logo with the main menu. */
#loading{position:fixed;inset:0;z-index:1000;display:block;overflow:hidden;background:#073f33;color:#fff8dd;font-family:var(--ui-font,var(--font),sans-serif);letter-spacing:0;isolation:isolate}
#loading[hidden]{display:none!important}
#loading .loading-art{position:absolute;inset:0;z-index:-2;display:block}
#loading .loading-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
#loading::after{content:"";position:absolute;inset:55% 0 0;z-index:-1;background:linear-gradient(transparent,#003d32a6)}
#loading .loading-logo{position:absolute;left:50%;top:max(env(safe-area-inset-top,0px),2.5vh);transform:translateX(-50%);width:clamp(230px,30vw,480px);height:auto;max-height:31vh;object-fit:contain;filter:drop-shadow(0 5px 6px #002a2926)}
#loading .loading-status{position:absolute;left:50%;bottom:max(7.5vh,calc(env(safe-area-inset-bottom,0px) + 22px));transform:translateX(-50%);width:min(540px,calc(100% - 56px));text-align:center}
#loading .loading-caption{margin:0 0 16px;font-size:clamp(12px,1.35vw,18px);font-weight:700;letter-spacing:.23em;text-indent:.23em;text-shadow:0 2px 9px #002d29}
#loading .loading-meter{display:flex;align-items:center;gap:14px}
#loading .loading-track{position:relative;flex:1;height:8px;overflow:hidden;border-radius:20px;background:#e8f2dd40;box-shadow:0 1px 5px #001c2626}
#loading .loading-fill{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffd15a,#ffb52d);transition:width .18s ease-out}
#loading .loading-percent{min-width:3ch;font:700 13px/1 var(--ui-font,var(--font),sans-serif);font-variant-numeric:tabular-nums;color:#fff6dc}
#loading #load-message{display:block;min-height:2.5em;margin-top:12px;font-size:12px;line-height:1.4;color:#e8f0e0;letter-spacing:.02em;text-shadow:0 1px 6px #002d29}
#loading #load-message button{display:block;margin:12px auto 0;min-height:44px;padding:8px 22px;border:1px solid #fff6dc80;border-radius:7px;background:#123b32;color:#fff6dc;font:inherit;cursor:pointer}
@media(orientation:portrait){#loading .loading-logo{top:max(5vh,calc(env(safe-area-inset-top,0px) + 14px));width:74vw;max-height:23vh}#loading .loading-status{bottom:max(5vh,calc(env(safe-area-inset-bottom,0px) + 18px));width:calc(100% - 44px)}#loading::after{inset:68% 0 0;background:linear-gradient(transparent,#00372bea 85%)}#loading .loading-caption{font-size:12px;letter-spacing:.17em}}
@media(max-height:450px) and (min-aspect-ratio:4/3){#loading .loading-logo{top:0;width:220px;max-height:29vh}#loading .loading-status{bottom:max(12px,env(safe-area-inset-bottom,0px));width:min(420px,60vw)}#loading .loading-caption{margin-bottom:9px;font-size:11px}#loading #load-message{margin-top:7px;min-height:1.4em;font-size:11px}}
@media(prefers-reduced-motion:reduce){#loading .loading-fill{transition:none}}
