.iston-loading-spinner {
    display: block;
    width: 32px;
    height: 32px;
    margin: 12px auto 0;
    box-sizing: border-box;
    border: 3px solid #e2e8f0;
    border-top-color: #3559a7;
    border-right-color: #4b86c6;
    border-radius: 50%;
    animation: iston-loader-rotate 0.85s linear infinite;
}
@keyframes iston-loader-rotate {
    to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
    .iston-loading-spinner { animation: none; }
}

.iston-loading {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #ffffff 0%, #f8f8f8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    transition: opacity 0.6s ease, visibility 0.6s ease;
}
.iston-loading.hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.iston-loader-content { text-align: center; }
.iston-loader-logo {
    display: block;
    width: auto;
    height: 96px;
    max-width: 75vw;
    object-fit: contain;
    margin: 0 auto 30px;
}
@media (max-width: 768px) {
    .iston-loader-logo { height: 52px; max-width: 55vw; margin-bottom: 22px; }
    .iston-loading-spinner { width: 26px; height: 26px; border-width: 2px; }
}
