.app-connection-status {
    box-sizing: border-box;
    position: fixed;
    left: 50%;
    top: calc(14px + env(safe-area-inset-top, 0px));
    z-index: 1350;
    width: min(calc(100vw - 28px), 440px);
    transform: translateX(-50%);
    padding: 8px 14px;
    border: 1px solid rgba(148, 163, 184, 0.3);
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.92);
    color: #f8fafc;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.3);
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
    pointer-events: none;
}

.app-connection-status[data-state="session_expired"],
.app-connection-status[data-state="password_change_required"] {
    border-color: rgba(248, 113, 113, 0.4);
    background: rgba(127, 29, 29, 0.94);
}

.app-connection-status[data-state="sync_restored"] {
    border-color: rgba(45, 212, 191, 0.4);
    background: rgba(20, 83, 45, 0.94);
}

.app-connection-status[hidden] { display: none; }
