.dialog-container {
    background-color: var(--color-modals-background);
    border-radius: 8px;
    min-width: 400px;
    max-width: 500px;
    color: var(--color-text-primary);
}

.dialog-header {
    padding: 1.25rem;
    border-bottom: 1px solid var(--color-divider-subtle);

    h2 {
        margin: 0;
        font-size: 1.25rem;
        font-weight: 400;
    }
}

.dialog-content {
    padding: 1.25rem;

    form {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
}

.form-field {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;

    label {
        font-size: 0.875rem;
        color: var(--color-text-secondary);

        .required {
            color: var(--color-error, #ff4d4f);
            margin-left: 2px;
        }
    }

    input,
    select {
        padding: 0.625rem;
        background-color: var(--color-input-background);
        border: 1px solid var(--color-input-border);
        border-radius: 6px;
        color: var(--color-text-primary);
        font-size: 0.875rem;

        &::placeholder {
            color: var(--color-input-text-placeholder);
        }

        &:focus {
            outline: none;
            border-color: var(--accent-color);
        }

        &:disabled {
            opacity: 0.5;
            cursor: not-allowed;
        }
    }

    .error-hint {
        font-size: 0.75rem;
        color: var(--color-error, #ff4d4f);
    }

    .slider-description {
        font-size: 0.75rem;
        color: var(--color-text-tertiary);
        margin-top: 0.25rem;
        line-height: 1.4;
    }
}

.dialog-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1rem;
}

.loading-state {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    color: var(--color-text-secondary);
}

.error-message {
    background-color: rgba(255, 77, 79, 0.1);
    color: var(--color-error, #ff4d4f);
    padding: 0.75rem;
    border-radius: 4px;
    margin-bottom: 1rem;

    p {
        margin: 0;
        font-size: 0.875rem;
    }
}
