.ombox-spin {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    color: var(--color-text-secondary);
}

.ombox-spin-indicator {
    width: 20px;
    height: 20px;
    border: 3px solid var(--color-gray-200);
    border-top-color: var(--color-primary);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

.ombox-spin-overlay,
.ombox-spin-fullscreen {
    position: absolute;
    inset: 0;
    z-index: 1100;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.72);
}

.ombox-spin-fullscreen {
    position: fixed;
    z-index: 2300;
}

body.eye-protection .ombox-spin {
    color: #6b5d4f;
}

body.eye-protection .ombox-spin-indicator {
    border-color: #d9cbb8;
    border-top-color: #c9965b;
}

body.eye-protection .ombox-spin-overlay,
body.eye-protection .ombox-spin-fullscreen {
    background: rgba(250, 248, 243, 0.78);
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
