.maintenance-overlay {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: grid;
    place-items: center;
    padding: 24px;
    overflow: auto;
    color: #202020;
    background: rgba(255, 255, 255, .08);
    -webkit-backdrop-filter: grayscale(1);
    backdrop-filter: grayscale(1);
    text-align: center;
}

.maintenance-overlay[hidden] { display: none; }

.maintenance-card {
    width: min(100%, 560px);
    padding: clamp(28px, 6vw, 52px);
    border: 1px solid rgba(70, 70, 70, .25);
    border-radius: 24px;
    background: rgba(250, 250, 250, .97);
    box-shadow: 0 18px 60px rgba(0, 0, 0, .22);
}

.maintenance-illustration {
    display: grid;
    width: 220px;
    height: 220px;
    margin: 0 auto 28px;
    place-items: center;
}

.maintenance-globe {
    width: 112px;
    height: 112px;
    color: #eeeeee;
    animation: maintenance-globe-turn 3.4s linear infinite;
    transform-origin: center;
}

.maintenance-check {
    width: 128px;
    height: 128px;
    color: #36d27c;
    animation: maintenance-check-pop .48s cubic-bezier(.2, 1.5, .5, 1) both;
    filter: drop-shadow(0 8px 18px rgba(54, 210, 124, .25));
}

.maintenance-message {
    margin: 0;
    font: 600 clamp(20px, 4vw, 28px)/1.4 system-ui, sans-serif;
    letter-spacing: .01em;
}

body.maintenance-visible { overflow: hidden; }
body.maintenance-visible > :not(.maintenance-overlay) {
    filter: grayscale(1);
}

@keyframes maintenance-globe-turn {
    from { transform: rotateY(0deg) rotate(-12deg); }
    to { transform: rotateY(360deg) rotate(-12deg); }
}

@keyframes maintenance-check-pop {
    from { opacity: 0; transform: scale(.55) rotate(-12deg); }
    to { opacity: 1; transform: scale(1) rotate(0); }
}

@media (prefers-reduced-motion: reduce) {
    .maintenance-globe { animation-duration: 12s; }
    .maintenance-check { animation: none; }
}

.maintenance-continue{margin-top:24px;padding:12px 22px;border:1px solid #555;border-radius:10px;background:#fff;color:#111;font:600 16px system-ui;cursor:pointer}.maintenance-continue[hidden]{display:none}

.maintenance-illustration .stock-loading-globe{width:200px;height:200px;margin:0;filter:grayscale(1)}
