    /* Hide when ASP.NET renders no model-level errors */
    .validation-summary-container:has(.validation-summary-valid) {
        display: none;
    }

    .validation-summary-container {
        display: flex;
        align-items: center;
        gap: var(--spacing-md);
        padding: var(--spacing-lg);
        background: var(--colors-error-25, #fef2f2);
        border: 1px solid var(--colors-error-200, #fecaca);
        border-radius: var(--radius-md);
        margin-bottom: var(--spacing-xl);
        position: relative;
        animation: validationSlideIn 0.3s ease-out;
    }

    @keyframes validationSlideIn {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .validation-summary-icon {
        flex-shrink: 0;
        color: var(--colors-error-600, #D92D20);
        display: flex;
        align-items: center;
    }

    .validation-summary-content {
        flex-grow: 1;
        min-width: 0;
    }

    .validation-summary-list {
        color: var(--colors-error-700, #991b1b);
        font-size: 14px;
        line-height: 1.6;
    }

    .validation-summary-list ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .validation-summary-list ul li {
        margin-bottom: 4px;
    }

    .validation-summary-list ul li:last-child {
        margin-bottom: 0;
    }

    .validation-summary-close {
        flex-shrink: 0;
        width: 24px;
        height: 24px;
        background: transparent;
        border: none;
        border-radius: var(--radius-xs);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--colors-error-600, #b91c1c);
        cursor: pointer;
        transition: all 0.2s ease;
        padding: 0;
        margin-top: 0;
    }

    .validation-summary-close:hover {
        background: rgba(185, 28, 28, 0.1);
        color: var(--colors-error-700, #991b1b);
    }

    /* Single error without list */
    .validation-summary-list:not(:has(ul)) {
        font-weight: 500;
    }
