/* Elvatis Defense Dashboard - Minimal custom CSS (Tailwind handles the rest) */

/* HTMX loading indicators */
.htmx-indicator {
    display: none;
}
.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator {
    display: inline-block;
}

/* Spinner animation */
@keyframes spin {
    to { transform: rotate(360deg); }
}
.animate-spin {
    animation: spin 1s linear infinite;
}

/* Progress bar animation */
@keyframes progress-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}
.progress-pulse {
    animation: progress-pulse 2s ease-in-out infinite;
}

/* Smooth transitions for HTMX swaps */
.htmx-swapping {
    opacity: 0;
    transition: opacity 200ms ease-out;
}
.htmx-settling {
    opacity: 1;
    transition: opacity 200ms ease-in;
}

/* Score circle */
.score-circle {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    font-weight: 700;
    position: relative;
}
.score-circle::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    background: conic-gradient(
        var(--score-color, #3b82f6) calc(var(--score-pct, 0) * 1%),
        #1f2937 0
    );
    z-index: -1;
}

/* Domain progress bars */
.domain-bar-fill {
    transition: width 0.8s ease-out;
}
