/* Skeleton loading placeholders */

.skeleton-block {
    background: linear-gradient(
        90deg,
        var(--color-surface-raised) 0%,
        var(--color-surface-hover) 50%,
        var(--color-surface-raised) 100%
    );
    background-size: 200% 100%;
    animation: skeleton-shimmer 1.4s ease-in-out infinite;
    border-radius: var(--radius-sm);
}

@keyframes skeleton-shimmer {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

.sidebar-skeleton {
    display: flex;
    flex-direction: column;
    gap: var(--space-md, 16px);
}

.sidebar-skeleton-widget {
    background: var(--color-surface, #2d2d2d);
    border: 1px solid var(--color-border, #444);
    border-radius: var(--radius-md, 8px);
    padding: var(--space-md, 16px);
}

.sidebar-skeleton-title {
    height: 18px;
    width: 55%;
    margin-bottom: 12px;
}

.sidebar-skeleton-line {
    height: 10px;
    width: 100%;
    margin-bottom: 8px;
}

.sidebar-skeleton-line.short {
    width: 70%;
}

.sidebar-skeleton-line.shorter {
    width: 45%;
}

.lazy-section-loading .sidebar-skeleton-widget {
    min-height: 120px;
}

.lazy-section-error .sidebar-skeleton-widget {
    border-color: rgba(220, 53, 69, 0.35);
}

.lazy-section-error-message {
    color: var(--color-text-muted, #aaa);
    font-size: 0.9rem;
    margin: 0;
}
