/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* The layout's styles are in wwwroot/app.css with the rest of the theme. */
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-9b7izquvbq],
.components-reconnect-repeated-attempt-visible[b-9b7izquvbq],
.components-reconnect-failed-visible[b-9b7izquvbq],
.components-pause-visible[b-9b7izquvbq],
.components-resume-failed-visible[b-9b7izquvbq],
.reconnect-logo[b-9b7izquvbq] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-show .reconnect-logo[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-retrying[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-retrying .reconnect-logo[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-failed[b-9b7izquvbq],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-9b7izquvbq] {
    display: block;
}


/* OrderHub's own look (owner, 2026-11-09): the box in the page's colours, the app logo with accent rings pulsing out of it */
#components-reconnect-modal[b-9b7izquvbq] {
    background-color: var(--panel, #1A1D22);
    color: var(--text, #ECEEF1);
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem 2rem 1.75rem;
    border: 1px solid var(--line, #2A2E35);
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-9b7izquvbq 0.5s both;
}
#components-reconnect-modal[open][b-9b7izquvbq] {
    animation: components-reconnect-modal-slideUp-b-9b7izquvbq 1.2s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-9b7izquvbq 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

#components-reconnect-modal[b-9b7izquvbq]::backdrop {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(3px);
    animation: components-reconnect-modal-fadeInOpacity-b-9b7izquvbq 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-9b7izquvbq {
    0% { transform: translateY(30px) scale(0.95); }
    100% { transform: translateY(0); }
}
@keyframes components-reconnect-modal-fadeInOpacity-b-9b7izquvbq {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
@keyframes components-reconnect-modal-fadeOutOpacity-b-9b7izquvbq {
    0% { opacity: 1; }
    100% { opacity: 0; }
}

.components-reconnect-container[b-9b7izquvbq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-9b7izquvbq] {
    margin: 0;
    text-align: center;
    line-height: 1.5;
    color: var(--subtext, #9AA1AB);
}
#components-reconnect-modal p strong[b-9b7izquvbq] { color: var(--text, #ECEEF1); font-size: 1.1em; }

#components-reconnect-modal button[b-9b7izquvbq] {
    font: inherit;
    font-weight: 600;
    border: 1px solid var(--accent, #2F80ED);
    background-color: var(--accent, #2F80ED);
    color: var(--on-accent, #fff);
    padding: 8px 24px;
    border-radius: 6px;
    cursor: pointer;
}
#components-reconnect-modal button:hover[b-9b7izquvbq] { background-color: var(--accent-hover, #4E93F0); }
#components-reconnect-modal button:active[b-9b7izquvbq] { background-color: var(--accent-down, #2769C2); }

/* the logo, breathing, with two rings spreading out behind it */
.reconnect-logo[b-9b7izquvbq] {
    position: relative;
    width: 120px;
    height: 120px;
}
.reconnect-logo img[b-9b7izquvbq] {
    position: absolute;
    inset: 16px;
    width: 88px;
    height: 88px;
    object-fit: contain;
    border-radius: 22px;
    animation: reconnect-breathe-b-9b7izquvbq 2s ease-in-out infinite;
}
.reconnect-logo .ring[b-9b7izquvbq] {
    position: absolute;
    inset: 16px;
    border-radius: 50%;
    border: 3px solid var(--accent, #2F80ED);
    opacity: 0;
    animation: reconnect-ring-b-9b7izquvbq 2s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
.reconnect-logo .ring:nth-child(2)[b-9b7izquvbq] { animation-delay: -1s; }

@keyframes reconnect-breathe-b-9b7izquvbq {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.06); }
}
@keyframes reconnect-ring-b-9b7izquvbq {
    0% { transform: scale(0.85); opacity: 0.9; }
    100% { transform: scale(1.45); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .reconnect-logo img[b-9b7izquvbq], .reconnect-logo .ring[b-9b7izquvbq] { animation: none; }
}
