/* Loader dei risultati htmx (#results-loader, hx-indicator): ricerca, lemmi,
   nomi propri. Le pagine lo linkano prima del proprio CSS. */
.results-wrapper {
    position: relative;
    min-height: 150px;
}

.loader-main {
    font-size: var(--fs-md);
    margin-top: 4px;
}

.loader-slow,
.loader-time {
    font-size: var(--fs-sm);
    color: var(--bs-secondary-color);
    opacity: 0;
    transition: opacity 0.6s ease;
}

.loader-slow.visible,
.loader-time.visible {
    opacity: 1;
}

.results-loader {
    position: absolute;
    inset: 0;
    background: rgba(255,255,255,0.85);
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    z-index: 5;
    backdrop-filter: blur(2px);
}

#results-loader.htmx-request {
    display: flex;
}

.spinner {
    width: 36px;
    height: 36px;
    border: 4px solid var(--bs-border-color);
    border-top: 4px solid var(--bs-gray-700);
    border-radius: 50%;
    animation: spin 0.9s linear infinite;
    margin-bottom: 8px;
}

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