.mobile-page-loading[hidden] { display: none !important; }
.mobile-page-loading {
    position: fixed;
    inset: 0;
    z-index: 20000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(242, 248, 245, 0.94);
    backdrop-filter: blur(4px);
}
.mobile-page-loading__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: min(100%, 320px);
    padding: 30px 24px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 40px rgba(15, 48, 32, 0.14);
    color: #153c29;
    font: 600 15px/1.4 Inter, Arial, sans-serif;
    text-align: center;
}
.mobile-page-loading__spinner {
    width: 44px;
    height: 44px;
    border: 4px solid #d9efe1;
    border-top-color: #049243;
    border-radius: 50%;
    animation: mobile-page-loading-spin 0.8s linear infinite;
}
@keyframes mobile-page-loading-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .mobile-page-loading__spinner { animation: none; }
}
